MVVM パターンに基づく WPF アプリケーションを構築しています。
後で、同じタイプの Silverlight アプリケーションと Web アプリケーションを構築します。
3 つの UI:s すべてで ViewModels を使用したいので、vm:s をクラス ライブラリに移動することを考えていましたが、ICommands を失いました。これを回避する簡単な方法はありますか?
この問題をどのように解決しますか?
よろしく、ピーター・ラーソン!
すべてのドメイン固有のロジックをViewModelsではなく、Modelに移動する必要があります。ViewModelは、モデルの単なるビューです。アプリのUIロジックを処理します。これは、Silverlight、WPF、またはWebに固有の場合があります。実装間で決して変更してはならないのは、ドメインのコアであるモデルです。
ロジックをモデルに配置し、WPFとSilverlightの実装にはMV-VMを使用し、Webの実装にはMVCを使用します。
MVVM は WPF/SilverLight のバインドを想定しているため、確実に Web 上で使用することはできず、適切でもありません。バインドなしでは絶望的です。
Web 上で MVC が必要な場合、MVVM は MVP に他なりません。