Noch ein weiteres Ereignisempfänger Debuggen Trick

Ich bin sicher, dass ich nicht die erste Person, die mit diesem kommen. Jedoch, Ich habe nicht bemerkt, dass jemand einen Trick, wie dies zu veröffentlichen, da ich begann nahe Aufmerksamkeit auf der Gemeinschaft im Juli. Also, Ich dachte, ich würde es post, diese schnelle und einfache Debug-Tipp.

Ich arbeite gerade an einen Ereignisempfänger, die damit begonnen, diese Fehler in der 12 Bienenkorb:

Fehler beim Laden und Ausführen des Ereignisempfängers Conchango.xyzzyEventReceiver in xyzzy, Version = 1.0.0.0, Kultur = Neutral, PublicKeyToken = Blahbalhbalh. Weitere Informationen finden sich unter. : Objektverweis nicht auf eine Instanz eines Objekts festgelegt.

Ich wusste nicht, wo ich dieser Bug eingeführt hatte, weil ich, zu viele Dinge in einem mein Code/bereitstellen/Test-Zyklen getan hatte.

Ich habe versucht Diese Lösung zu meiner Pdb dort mit der Hoffnung, dass SharePoint erhalten 12 Bienenkorb würde die Stapelüberwachung anzeigen, aber kein Glück. Ich weiß nicht, ob es möglich ist, und wenn jemand tut, Bitte lassen Sie mich wissen 🙂

Ich weiß, dass es möglich ist Schreiben Sie Ihren eigenen Log-Meldungen zu den 12 Bienenkorb. Ehrlich gesagt, Ich wollte etwas ein wenig weniger beängstigend und schneller zu implementieren.

Es fiel mir ein, dass ich zumindest einige grundlegende Ablaufverfolgungsinformationen bekommen konnte, durch Abfangen und Auslösen von generische Ausnahmen wie folgt:

  versuchen {
    UpdateEditionDate(Eigenschaften);
  }
  fangen (Ausnahme e)
  {
    werfen Neu Ausnahme("Dispatcher, UpdateEditionDate(): Ausnahme: [" + e.ToString() + "].");
  }

Dies zeigte sich der 12 auf diese Weise Bienenstock:

Fehler beim Laden und Ausführen des Ereignisempfängers Conchango.xyzzyEventReceiver in xyzzy, Version = 1.0.0.0, Kultur = Neutral, PublicKeyToken = Blahblahblah. Weitere Informationen finden sich unter. : Verteiler, UpdateEditionDate(): Ausnahme: [NullReferenceException-System.: Objektverweis nicht auf eine Instanz eines Objekts festgelegt. bei Conchango.xyzzyManagementEventReceiver.UpdateEditionDate(SPItemEventProperties-Eigenschaften) bei Conchango.xyzzyManagementEventReceiver.Dispatcher(SPItemEventProperties-Eigenschaften, String eventDescription)].

Das gab mir alle Details, die ich brauchte, um dieses besondere Problem aufzuspüren und ich erwarte, dass es geht viel weiter verwenden.

</Ende>

Onnieren Sie meinen Blog ab!

3 Gedanken zu „Noch ein weiteres Ereignisempfänger Debuggen Trick

  1. Anders Rask
    Ich habe viel Glück in letzter Zeit diese Art von Problemen mit einer Kombination aus SPTraceView und DebugView Debuggen
    DebugView allein ist sehr brauchbar als auch. Sie können aus Ausgabe mit System.Diagnostics.Debug.WriteLine leiten.().
    Sie haben nicht einmal um sie zu entfernen, wenn Sie Build loslassen, Da die Ausgabe nur im Debug-Build-Modus ausgelöst wird.
    SPTraceView ist ein Tool von Hristo Pavlov.
    In der Standardeinstellung zeigen festlegen ULS Ablaufverfolgungsereignisse Ihnen wie sie geschehen. Und es fängt auch die ULS-Ablaufverfolgungsereignisse, * nicht * für Diagnoseprotokoll machen!
    Aber das ich abschalten, sobald ich die Util laufen. Was viel besser ist, dass Sie die Ausgabe im DebugView erscheint weiterleiten können.
    Es hat auch eine Menge nette Features für die Filterung auf Ereignisebenen, Dienstleistungen usw..
    HTH
    Anders
    oh and nice seeing you in the bar at SPBP 🙂
    Antwort
  2. Charles

    Noch besser wäre es, eine Protokollierung-Bibliothek wie Enterprise Library zu integrieren oder log4net und Ihr Leben wird einfacher.

    Antwort

Hinterlasse eine Antwort

Deine Email-Adresse wird nicht veröffentlicht. erforderliche Felder sind markiert *