まだもう 1 つのイベント レシーバーのデバッグのトリック

私は確信しているこの思い付く最初の人ではないです。. ただし, 誰もこのようなトリックを公開以来、私は昨年 7 月、コミュニティに細心の注意を払って始めたを気づいていません。. だから, この速く、容易なデバッグのヒント ポストイットだと思った.

このエラーを生成を開始するイベント レシーバーに取り組んで、 12 ハイブ:

読み込みエラーとイベント レシーバー Conchango.xyzzyEventReceiver xyzzy で実行, バージョン 1.0.0.0 を =, カルチャ ニュートラル =, PublicKeyToken = blahbalhbalh. 詳細は以下、します。. : オブジェクト参照オブジェクトのインスタンスに設定されていません.

私は私のコード、配置、テストのサイクルの 1 つでも多くのことを行っていたのでこのバグを導入していた私とは知らなかった.

私は試みた このソリューション SharePoint の期待とそこに私の pdb を取得するには 12 ハイブは、スタック トレースを表示, 運. それが可能ならと誰かがわからない, 私に知らせてください。 🙂

それはすることを知っています。 ログ メッセージに書いて、 12 ハイブ. 率直に言って, 少し怖いと実装するより速く何かをしたかった.

それが私は少なくともこのような汎用的な例外を再スローとキャッチによっていくつかの基本的なトレース情報を得ることができるが発生しました:

  してください。 {
    UpdateEditionDate(プロパティ);
  }
  キャッチ (例外 e)
  {
    スロー 新機能 例外(「ディスパッチャー, UpdateEditionDate(): 例外: [" + e.ToString() + "].");
  }

これに現れた、 12 thusly ハイブします。:

読み込みエラーとイベント レシーバー Conchango.xyzzyEventReceiver xyzzy で実行, バージョン 1.0.0.0 を =, カルチャ ニュートラル =, PublicKeyToken = ハント. 詳細は以下、します。. : ディスパッチャー, UpdateEditionDate(): 例外: [通常。: オブジェクト参照オブジェクトのインスタンスに設定されていません. Conchango.xyzzyManagementEventReceiver.UpdateEditionDate で(SPItemEventProperties のプロパティ) Conchango.xyzzyManagementEventReceiver.Dispatcher で(SPItemEventProperties のプロパティ, 文字列 eventDescription)].

それは私の特定の問題を追跡するために必要なすべての詳細を与えたし、たくさん今後それを使用することを期待.

</終了>

私のブログを購読します。!

3 「上の思考まだもう 1 つのイベント レシーバーのデバッグのトリック

  1. アンダース ・ ラスク
    多くの最近 SPTraceView と DebugView の組み合わせで問題のこの種のデバッグの運を持ってください。
    Debugview だけでは非常に有用なも. System.Diagnostics.Debug.WriteLine を使用して出力をパイプすることができます。().
    リリース ビルド時に削除することもないです。, 出力がデバッグ モードでビルドのみトリガーされるので.
    SPTraceView はフリスト ・ パブロフによって作成されたツールです。.
    デフォルトでそれを設定表示されます ULS トレース イベント彼らが起こると. それはまた ULS トレース イベントをキャッチし、、* しない * の診断ログを確認!
    しかし、できるだけ早く、util を実行を無効にします。. はるかに良いどうした DebugView に表示する出力をパイプすることができます。.
    それはまたたくさんのイベント レベルのフィルタ リングのための素晴らしい機能を持っています。, サービス等.
    hth
    アンダース
    ああ、素敵SPBPのバーでお会い🙂
  2. チャールズ

    いっそのこと, ロギング ライブラリのようなエンタープライズ ライブラリまたは log4net とあなたの人生がさらに簡単に組み込むこと.

返信にコメントを残す チャールズ 返信をキャンセル

あなたのメールアドレスが公開されることはありません. 必須フィールドは、マークされています *