locked
Bindingのパス エラー に対して、開発者・テスターに警告を出す方法について RRS feed

  • 質問

  • 損と申します。
    Silverlight4+VisualStudio2010で開発しております。

    アプリケーションを複数人で開発しているのですが、テストで「XAMLにバインドは記述したけれど、ViewModelにそのプロパティが無い」という不具合が多発しています。
    本来であれば、開発時に注意してそういったことの無いように実装しておくべきなのですが、数が多いため、一括で検知して修正をかけたいと思っています。

    デバッグ時は、出力ウィンドウに以下のようなエラーが出力されているので気付けるのですが、アプリケーションだけを使っている人ではバインドのエラーに気付くことは難しいです。

    ■出力ウィンドウに出るエラー情報例
    System.Windows.Data エラー: BindingExpression パス エラー: 'Test' プロパティが 'TESTPROJ.DEBUG.TEST.TESTViewModel' 'TESTPROJ.DEBUG.TEST.TESTViewModel' (HashCode=XXXXXXXX) に見つかりませんでした。BindingExpression: Path='Test' DataItem='TESTPROJ.DEBUG.TEST.TESTViewModel' (HashCode=XXXXXXXX); ターゲット要素は 'TESTPROJ.DEBUG.TEST.TextBoxEx' (Name='_text'); ターゲット プロパティは 'IsEnabled' (型 'System.Boolean') です。.

    例外が発生しているわけではないため、エラーがあったらメッセージボックスを出す、のようなこともできず、上手い方法が思いつきません。
    どなたか、良い方法をお持ちの方はいらっしゃいますでしょうか?

    調べている方向性としては、
    ・出力ウィンドウに出るエラーを分離ストレージに残す方法があれば、そのログを溜めておき、後で一括で検索する。
    ・パスのエラーをコード上で検知できれば、そこでメッセージボックスを出す。
    というようなことができないか考えています。

    2012年3月16日 6:55