2

MVVMとMVCについてのブログや、MVVMはWindowsのMVC拡張機能のようなものだというブログをたくさん見ました。

設計上の問題が1つあり、MVVMを使用するwinアプリケーションを1つ作成しました。今度は、Webで同じアプリケーションを作成する必要があるため、Asp.netでMVCパターンを作成することにしましたが、ここでも問題が発生します。

MVCでViewModelを再利用する方法は?ViewModelには名前空間System.Windows.Inputがインポートされているためです。

代替の解決策はありますか?私の主な要件は、アプリケーションロジックを再利用することですか?

参照としてhttp://waf.codeplex.com/WpfApplicationフレームワークを使用しました。

前もって感謝します。

4

2 に答える 2

5

事実、この 2 つは交換可能ではありません。また、(実際的な意味で) そうあるべきではありません。はい、ASP.NET MVC でも再利用できる ViewModel を作成できます。しかし、組み込む必要がある抽象化の量により、演習は役に立たなくなります。

この非互換性を心配して時間を無駄にしないでください。それを削減/排除するために懸命に取り組んでください。

すべきこと、WPF にも ASP.NET にも依存しない真に再利用可能なコードを再利用可能なライブラリに移動することです。このコードは、両方のアプリケーションで再利用する必要があります。ViewModel と Controller は、サービスを提供するように設計されたアプリケーション フレームワークに属しています。

于 2011-07-25T13:26:14.310 に答える
2

ビジネス ロジックは、ビュー モデルではなく、モデルにある必要があります。つまり、再利用したいのはモデルであり、他にはありません。ビュー モデルは Windows アプリケーションに固有であり、Web アプリケーションに固有のコントローラーと同等です。

于 2011-07-25T12:35:06.067 に答える