7

MVC フォルダー構造で、一般的なクラス ファイルはどこに配置する必要がありますか? たとえば、使用する適切な DataContext を決定するクラスがあるため、各コントローラーで車輪を再発明する必要はありません。コントローラーではありませんが、Controllers フォルダーに存在する必要がありますか? モデルではありませんが、データベースに関連しているため、モデルと一緒にする必要がありますか? おそらくViews\Sharedフォルダーですか?それとも、コンテンツはその種のもののキャッチオール フォルダーですか? どこにでも置くことができると確信していますが、「正しい」場所はどこにあるのか疑問に思っていました。

4

6 に答える 6

9

コントローラー、コンテンツ、またはビューではないため、使用しないでください。モデルに最も密接に関連しているように見えるので、「ヘルパー」または「ユーティリティ」などと呼ばれるサブフォルダーの下のモデルに配置できます。または、Services という別の最上位フォルダーを追加して、そこに配置することもできます。ここに、すべてのアプリ ロジック、つまりコントローラーとモデルの間の仲介者を配置します。

于 2009-02-03T15:58:04.483 に答える
3

Rob の MVC Storefront を見ると: 個別のクラス ライブラリ プロジェクト (Commerce.MVC.Data など)

于 2009-02-03T15:54:31.837 に答える
0

別の DataAccess アセンブリを用意し、そのクラスを内部にして、DataContextFactory と呼びます。

于 2009-02-04T13:04:46.923 に答える
0

それ自体が有用な場合 (コマンド ライン ツールの周りに構築されていると考えてください)、Models フォルダーに配置します。コントローラーのヘルパーとしてのみ使用する場合は、Controllers フォルダーに配置します。

于 2009-02-03T15:50:44.793 に答える
0

データにアクセスする場合はデータアクセスレイヤーにある必要があり、そうでない場合はコントローラーフォルダーに配置できます。

于 2009-02-03T15:55:21.027 に答える
0

dmajkic、

なぜそれを独自の領域に分離するのですか?BLL コードの場合はコントローラー フォルダーにある必要があり、DAL 関連のアイテムの場合はモデルにある必要があります。プロジェクトが巨大になり、いくつかのサブフォルダーを作成したい場合は理解できますが、それは問題ではないはずです. しかし、別の層にコードを配置することは、MVC の目的を本当に無効にしていると思いませんか?

于 2009-02-03T15:57:04.780 に答える