7.2 Sichern, dass Exceptions nicht verloren gehen, wenn Finally-Blöcke verwendet werden
Problem
Sie haben mehrere geschachtelte try
-catch
-, try
-finally
- und try
-catch
-finally
-Blöcke. Wenn ein catch
-Block versucht, eine Exception auszulösen, kann es passieren, dass die ausgelöste Exception verworfen wird und dass eine neue unerwartete Exception von einem äußeren Exception-Handler abgefangen wird. Sie möchten verhindern, dass diese Situation eintritt.
Lösung
Fügen Sie einen inneren try
-catch
-Block in den finally
-Block des äußeren Exception-Handlers ein:
private void PreventLossOfException( ) { try { //... } catch(Exception e) { Console.WriteLine("Fehlermeldung == " + e.Message); throw; } finally {try
{
//..
.}
catch(Exception e)
{
Console.WriteLine(@"Im ...
Get C# Kochbuch now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.