だから私はMVC3プロジェクトの構築について読んでいて、私を深刻に悩ませていることが1つあります。プロジェクトのフォルダ構造は、HTTPリクエストのパスに対応しているわけではありません。私が好きで使いたいものはたくさんありますが、フラットなフォルダー構造を持つことはそれらの1つではありません。
なぜこれが問題なのですか?ええと、コンテンツページとさまざまなフォーム/動的ページ(ほとんどのサイトはそのようなものです)が大量に混在するサイトを構築するときに問題になると思います。これは通常、さまざまな人によって行われます。クライアント側の開発者が動的ページのルーティングルールに従うことや、新しいページを作成することは複雑すぎるようです。
私が理解したいのは、MVC3アプリケーションを次のように構成する方法があるかどうかです。
- これは、各コントローラーの明示的なルートマップなしでコントローラーを検索するためのディレクトリ構造に従います。
- ビューは、対応するコントローラーと同じフォルダーにあります
- ルーティングマジックは、アクションとパラメーターに対して引き続き機能します
たとえば、フォルダ内/fus/ro/dah/
を検索DahController
してそのアクションを実行するように要求したいとします。見つからない場合は、フォルダ内のアクションなどで検索します。\webroot\fus\ro\dah\
Index
RoController
Dah
\webroot\fus\ro\
MVCがこのように機能することを意図していない可能性は十分にあり、私は四角いペグを丸い穴に押し込もうとしています。
更新: ビューファイルを目的のフォルダー構造にドロップできるように見えます。実行されます。ただし、コントローラーを想定しているため、レイアウトは明らかに機能しません。これは、純粋なコンテンツページ用のコントローラーを作成する必要があることを意味しますか?それはかなりくだらないデザインです...
更新2:
現在の主な問題は、「fus」フォルダーを作成すると、MVCがFusController
「fus」フォルダーの下やその他の場所を検索しようとさえしないことを意味します。それを回避することは可能ですか?