2

ASP.NET MVC または Web API アプリケーションの「モデル」フォルダーまたはレイヤーについて質問があります (Web API を使用していますが、質問内容に基づいて両方に適用する必要があります)。MVC または Web API をアーキテクチャ全体として使用しようとするすべての基本的な例を参照してください。「Models」フォルダーには、通常、、、、などのクラスが格納されていますCustomerOrdersAddress

ただし、エンティティはすべて独自のドメイン/ビジネス レイヤーに抽出されているため、UI レイヤーにはモデル クラスがありません。

今でも、MVC アプリの最終的な整形済みデータとして ViewModels が必要ですが、ビューが必要な MVC や、注入されたリポジトリがビューなしで整形済みデータを返す Web API に関係なく、「Models」フォルダーはまだ必要ありません。これらのエンティティを別の別のレイヤーに移植するときに、UI レイヤーで。

これでよろしいですか?UI レイヤーにモデル クラスがない MVC を使用する場合、ここで説明するように、'Models' フォルダーに ViewModel を含める必要がありますか? ファット モデル / シン コントローラーとサービス レイヤー「Models」フォルダーを空のままにして、別の「ViewModels」フォルダーを作成する方が、モデルが存在することを示すのに理にかなっていると思いますが、別のレイヤーにあります。

ヘルプ内の各質問に感謝します、ありがとう!

4

2 に答える 2

4

あなたはそれを正しくやっています。重要な MVC アプリケーションでは、通常、Models フォルダーには ViewModel のみが含まれます。ViewModel が別のレイヤーにある場合も問題ありません。

ASP.NET MVC は独断的なフレームワークであり、特定の規則に従う必要がありますが、モデルの場所は規則の 1 つではありません。ただし、ビューを移動することは別の話です。

于 2013-01-09T19:39:46.790 に答える
2

私はそれが何の違いもないと思います。初心者の開発者を 2 分節約したい場合は、空のモデル フォルダー内に README.TXT を配置できます。

于 2013-01-09T19:41:40.113 に答える