Nel .NET Framework sono presenti un notevole numero di eccezioni, ognuna per un’eventualità specifica.
In questo articolo elencheremo le più comuni e con una descrizione associata per ognuna:
MemberAccessException
Errore di accesso: non è possibile accedere a un componente (per esempio un metodo).
ArgumentException
Errore di argomento: l’argomento passato a un metodo non è valido.
ArgumentNullException
Argomento nullo: a un metodo è stato passato un argomento nullo, che non può essere accettato.
ArithmeticException
Errore matematico: è un eccezione più generica di DivideByZeroException e di OverflowException, che si verifica in seguito a un0operazione matematica.
ArrayTypeMismatchException
Mancata corrispondenza del tipo, in un array: viene generata quando si cerca di memorizzare in un array un elemento incompatibile.
DivideByZeroException
Divisione per zero: è causata da un tentativo di dividere un numero per zero.
FormatException
Formato errato: un argomento non ha il formato corretto.
IndexOutOfRangeException
Indice fuori dall’intervallo consentito: viene generato quando si utilizza un indice inferiore a zero o superiore al valore massimo assumibile dall’indice di un array.
InvalidCastException
Attribuzione non valida: è causata dal fallimento di una conversione esplicita.
MulticastNotSupportedException
Attribuzione multipla (multicasting) non supportata: viene generata quando fallisce la combinazione di due funzioni delegate non nulle.
NotFiniteNumberException
Un numero non finito: il numero non è valido.
NotSupportedException
Il metodo non è supportato: indica che viene chiamato un metodo non implementano nella classe.
NullReferenceException
Riferimento a un oggetto nullo: viene generata quando cercate di utilizzare una variabile di riferimento nulla, alla quale non corrisponde alcun oggetto.
OutOfMemoryException
Memoria insufficiente: viene generata quando la memoria disponibile per allocare una nuova istruzione non è sufficiente.
OverflowException
Superamento della capacità (overflow): è causata da un’operazione matematica che assegna un valore troppo alto (o troppo basso) quando viene utilizzata la parola chiave checked.
StackOverflowException
Superamento delle capacità dello stack (stack overflow): si verifica quando lo stack contiene troppi comandi.
TypeInitializationException
Inizializzazione di tipo errata: si verifica quando ci sono problemi in un costruttore static.


