つまり、MVCアプリがあり、別のプロジェクトでは、アプリケーションのビジネスロジックとデータロジックを処理するクラスの通常のコレクションがあります。また、MVCプロジェクト自体のモデルにもいくつかのロジックがあります。このロジックは、ViewModelなどを処理します。これらは、MVCプロジェクト自体に関連しており、同じプロジェクトに存在する必要があるため、n層プロジェクトでは実行できませんでした。
私の質問は次のとおりです。
- モデルクラスには、n層のビジネスロジックに関する知識が必要ですか?または、コントローラーだけがこの知識を持ち、必要に応じてn層アプリケーションとMVCモデルの間でデータをやり取りする必要がありますか?
- モデルがn層アプリケーションを参照しても問題がない場合、コントローラーはモデルクラスを介してn層にアクセスする必要がありますか?
これが理にかなっていることを願って、私の主張を正しく伝えるのは難しいと感じました。