Beispiel für benutzerdefinierte Ausnahmen

Aktualisiert: November 2007

Diese Projektmappe zeigt zwei komplexere Ausnahmeverwaltungstechniken: benutzerdefinierte Ausnahmen und globale Ausnahmebehandlung.

So erhalten Sie Beispiele und Anweisungen zu ihrer Installation

  • Führen Sie eine oder mehrere der folgenden Aktionen aus:

    • Klicken Sie im Menü Hilfe auf Samplings.

      In der Infodatei befinden sich Informationen zu Beispielen.

    • Gehen Sie zur Website mit Visual Studio 2008-Beispielen. Hier stehen die aktuellsten Versionen der Beispiele bereit.

    • Suchen Sie Beispiele auf dem Computer, auf dem Visual Studio installiert wurde. Standardmäßig werden Beispiele und eine Infodatei unter Laufwerk:\Programme\Microsoft Visual Studio 9.0\Beispiele\lcid installiert. Für die Express-Version von Visual Studio werden alle Beispiele online bereitgestellt.

Weitere Informationen finden Sie unter Suchen von Beispieldateien.

Sicherheitshinweis:

Dieser Beispielcode soll lediglich ein Konzept veranschaulichen. Es wird nur der für das jeweilige Konzept relevante Code dargestellt. Möglicherweise erfüllt dieser nicht die Sicherheitsanforderungen für eine bestimmte Umgebung, und er sollte nicht genau wie dargestellt verwendet werden. Wir empfehlen, Sicherheits- und Fehlerbehandlungscode hinzuzufügen, um Ihre Projekte sicherer und stabiler zu machen. Microsoft stellt diesen Beispielcode "wie besehen" und ohne Garantien zur Verfügung.

So führen Sie dieses Beispiel aus

  1. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf das Projekt Client, und wählen Sie Als Startprojekt festlegen aus.

  2. Drücken Sie STRG+F5. Das Programm wird am besten außerhalb des Debuggers ausgeführt. Dadurch werden die Effekte eines globalen Ausnahmehandlers erkennbar.

Veranschaulicht

In diesem Beispiel sind zwei Projekte enthalten: ein Windows Forms-Client und eine Klassenbibliothek.

Class Library (Server)

Die Klassenbibliothek definiert Customer sowie eine Gruppe benutzerdefinierter Ausnahmeklassen, mit denen anwendungsdefinierte Fehler verfügbar gemacht werden. Die Ausnahmeklassen werden durch eine Vererbungshierarchie verknüpft. Die Basisklasse ist die CRMSystemException, die von ApplicationException erbt. CustomerException und EmployeeException erben von CRMSystemException. Es gibt zwei weitere Ausnahmen, die von CustomerException erben: CustomerNotFoundException und CustomerNotDeletedException. Jede Klasse macht andere Informations- und Funktionsebenen verfügbar.

Client Code

Die Clientanwendung besitzt einen Verweis auf die Klassenbibliothek. Zwei Befehlsschaltflächen führen Methoden mit der Customer-Klasse aus und fangen die benutzerdefinierten Ausnahmen ab. Eine dritte Befehlsschaltfläche löst eine nicht behandelte Ausnahme aus. Außerdem gibt es ein Kontrollkästchen "Turn on Global Exception Trap", das eine Auffangroutine für globale Ausnahmen aktiviert. Wenn er aktiviert ist, wird der in der OnThreadException-Methode definierte Code anstelle des Windows Forms-Standardhandlers ausgeführt.

Siehe auch

Referenz

ApplicationException

ThreadException

OnThreadException

Try...Catch...Finally-Anweisung (Visual Basic)

Weitere Ressourcen

Strukturierte Ausnahmebehandlung in Visual Basic