私はMVVMに適度に新しく、xamlの背後にある単純なコード(MVのテスト容易性など)よりもMVVMの利点の一部を理解しています。私たちはCaliburn Microを使っていくつかのバインディングを実行していますが、それは無関係です。特定のバインディング{binding ...}を使用することができます。バインディングのコンパイル時間チェック?
私は、すべてが正しく行われた場合、VMがVを何も知らないという論理を理解していますが、VとVMの間の動的実行時バインディングを使用しているためです。それぞれの結合表現の合法性。たとえば、UserNameというUIコンポーネントがある場合、Caliburnは実行時にUserNameというVMプロパティにその値をバインドしようとします(Value = "{{{UserName}"というようなことに似ています)。しかし、VMプロパティの名前を変更したり、UIコンポーネント名やバインディング式のスペルを間違えた場合、実行時まで問題がないことがわかります。
UIコンポーネントまたはページが特定のインターフェイスにバインドされるようにxamlに伝えることができれば、コンパイラは他の作業テスト部門によって(そしてそれは私がかなり頻繁に)行われます。
私たちがインターフェイスまたはオブジェクトタイプにバインドしていることをxamlに伝える方法はありますか?バインディングを検証するためにxamlアプリケーションにプラグインできるツールはありますか?
-1:OPはコンパイル時に明示的にソリューションを要求しました。 –
aha ...これは代替品です –
これはありません。 OPはすでにこれについて知っていて、それを使いたくない。 –