2010-12-11 9 views
3

は、私はここから読み:コントローラまたはモデル:MVCでビジネスメソッドを実装する必要があるのは誰ですか?

http://www.dotnetjohn.com/articles.aspx?articleid=287

コントローラは、アプリケーションのビジネスロジックを表します。モデルは、エンティティの状態を維持するコンポーネントです。私はMVCオリジナルの論文を読めば

は、しかし、それは私の意見でも同じことがありません: http://heim.ifi.uio.no/~trygver/1979/mvc-2/1979-12-MVC.pdf

私は、コントローラがちょうど交通警官のようであることを理解したように、モデルは、それが表しているので、知識がすべき実装ビジネス方法。

あなたの見解は?

答えて

8

IMHOコントローラーが使用するビジネスメソッドを実装するモデルです。私の場合、モデルはビジネスオブジェクトとそれらのオブジェクトの操作を表すサービスメソッドのセットです。 MVCは単なるパターンです。たとえば明日あなたがパターンを変えて何か他のものを使うことに決めたら、問題はありませんがビジネスモデルを変えてはいけません。

+1

ビジネスロジックがモデルに属していると約束した1000%。コントローラは理想的には、モデル(ビジネスロジック)とビュー(表示)間の通信を円滑にするためにのみ機能する必要があります。 – charliegriefer

3

私が取り組んでいるMVCアプリケーションでは、ビジネスロジックはドメインアセンブリにカプセル化されています。これは、多くのアプリケーションで共有されています。ドメインはコントローラによって調整され、コントローラと各ビューの間でデータをやりとりするために私はダムの "ViewModel"を使用します。

+0

私は理解できません。「ダム」とはどういう意味ですか? – user310291

+0

"ダム"とは一般的にビジネスロジックを意味しません。 – charliegriefer

関連する問題