2009-10-14 8 views
5

Ich möchte eine schön formatierte Zeichenfolge einer Ausnahme für die Protokollierung erstellen. Tun Sie dies von Silverlight Optionen wie nlog (not there yet), log4net sind keine Option.Nice format eine Ausnahme in eine Zeichenfolge

Wer den Code gesehen aufzubauen so etwas wie:

ExceptionType: xxxx 
Message: xxxx 
StackTrace: XXX 
InnerException 
    ExceptionType: xxxx 
    Message: xxxx 
    StackTrace: XXX 

ich derzeit bin es selbst schreiben, nur gehofft Code gibt es da draußen schöner, etwas zu tun.

UPDATE: Ich war gerade dabei, dieses q zu schließen, da ich zum selben Schluss kam wie Zach, aber Zach nicht die Punkte nehmen werde! :)

Die .ToString() sieht wie folgt aus:

 
System.Exception: I can't handle this ---> System.DivideByZeroException: Attempted to divide by zero. 
    at MuckingAround.RussTest_Click(Object sender, RoutedEventArgs e) 
    --- End of inner exception stack trace --- 
    at MuckingAround.RussTest_Click(Object sender, RoutedEventArgs e) 
    at System.Windows.Controls.Primitives.ButtonBase.OnClick() 
    at System.Windows.Controls.Button.OnClick() 
    at System.Windows.Controls.Primitives.ButtonBase.OnMouseLeftButtonUp(MouseButtonEventArgs e) 
    at System.Windows.Controls.Control.OnMouseLeftButtonUp(Control ctrl, EventArgs e) 
    at MS.Internal.JoltHelper.FireEvent(IntPtr unmanagedObj, IntPtr unmanagedObjArgs, Int32 argsTypeIndex, String eventName) 

Antwort

13

Sie sollten die .ToString() Methode der Ausnahme, indem Sie einfach all dies erhalten aufrufen. Wir verwenden dies, um Informationen zu protokollieren, und Sie bekommen alles, von dem Sie glauben, dass Sie es wünschen. Weitere Informationen finden Sie unter MSDN System.Exception.ToString().

0

Nur der Vollständigkeit halber: die EntLib-Logger können Sie Formatierer für Ihre Anwendung Ausnahme definieren.

0

Werfen Sie auch einen Blick darauf, was in der Enterprise Library 5.0 Silverlight Integration Pack, die viele dieser übergreifenden Bedenken der LOB-Entwickler, einschließlich Protokollierung und Ausnahmebehandlung behandelt.

Fühlen Sie sich frei, die Funktionen zu kommentieren und auch stimmen Sie bitte!

Verwandte Themen