Condividi tramite


Esempio di eccezioni personalizzate

Aggiornamento: novembre 2007

In questa soluzione vengono illustrate due tecniche più avanzate di gestione delle eccezioni: la gestione delle eccezioni personalizzate e la gestione delle eccezioni globali.

Per ottenere esempi e istruzioni per la relativa installazione

  • Effettuare una delle seguenti operazioni:

    • Dal menu Guida, scegliere Esempi.

      Il file Readme contiene informazioni sugli esempi.

    • Visitare il sito Web Visual Studio 2008 Samples (informazioni in lingua inglese). Su tale sito sono disponibili le versioni più recenti degli esempi.

    • Individuare gli esempi sul computer in cui è installato Visual Studio. Il percorso di installazione predefinito degli esempi e del file Readme relativo è unità:\Programmi\Microsoft Visual Studio 9.0\Samples\lcid. Per le versioni Express di Visual Studio tutti gli esempi sono disponibili in linea.

Per ulteriori informazioni, vedere Individuazione dei file di esempio.

Nota sulla sicurezza:

In questo esempio di codice viene illustrato un concetto e viene presentato solo il codice rilevante. È possibile che questo esempio non soddisfi i requisiti di sicurezza per un ambiente specifico ed è opportuno non utilizzarlo così come viene riportato. È consigliabile aggiungere codice relativo alla sicurezza e alla gestione degli errori per rendere i progetti più sicuri e potenti. Microsoft fornisce questo esempio di codice "COSÌ COM'È" senza garanzie.

Per eseguire l'esempio

  1. In Esplora soluzioni fare clic con il pulsante destro del mouse sul progetto Client e scegliere Imposta come progetto di avvio.

  2. Premere CTRL+F5. Per vedere gli effetti di un gestore delle eccezioni globali è consigliabile eseguire il programma all'esterno del debugger.

Dimostrazione

Questo esempio contiene due progetti: un client Windows Form e una libreria di classi.

Libreria di classi (server)

La libreria di classi definisce la classe Customer Customer e un insieme di classi di eccezioni personalizzate che vengono utilizzate per esporre gli errori definiti dall'applicazione. Le classi delle eccezioni sono correlate tramite una gerarchia di ereditarietà. La classe base è CRMSystemException, che eredita da ApplicationException. CustomerException e EmployeeException ereditano da CRMSystemException. Vi sono altre due eccezioni che ereditano da CustomerException: CustomerNotFoundException e CustomerNotDeletedException. Ogni classe espone livelli diversi di informazioni e funzionalità.

Codice client

L'applicazione client include un riferimento alla libreria di classi. Due pulsanti di comando eseguono metodi per la classe Customer e intercettano le eccezioni personalizzate. Un terzo pulsante di comando causa un'eccezione non gestita. Vi è, inoltre, una casella di testo con etichetta "Turn on Global Exception Trap" che attiva un trap per le eccezioni globali. Se attivato, il codice definito nel metodo OnThreadException viene eseguito al posto del gestore predefinito di Windows Form.

Vedere anche

Riferimenti

ApplicationException

ThreadException

OnThreadException

Istruzione Try...Catch...Finally (Visual Basic)

Altre risorse

Gestione delle eccezioni strutturata in Visual Basic