2

だから私は2つのバインディングを持つサイトを作成しています

routes.MapRoute(
  name: "Default", 
  url: "{controller}/{action}/{id}", 
  defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional });

routes.MapRoute(
  name: "DefaultAdmin",
  url: "Admin/{controller}/{action}/{id}",
  defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional });

アイデアは、EndUsers が通常のページ (/account/loginなど) にアクセスできるようにしたいが、管理者ユーザーにはサイトの管理者のみの部分 (レイアウトが異なる) を持たせたいということです。

質問はちょっと二重です:-

  1. コントローラーに関しては、MVC は Controllers フォルダーを参照するだけのように見えますが、AdminControllers と通常のコントローラーを分離して整理する方法はありますか?

  2. 管理者用に通常のものとは別の「マスター ビュー」を表示させ_layout.cshtmlたい_start.cshtmlと思って_layout.cshtml_adminLayout.cshtmlます。そうすれば、私はこれで十分簡単に​​暮らすことができます)。

任意のヘルプが適用されます。

4

2 に答える 2

3

System.Web.Mvc.Controllerコントローラーは、ルーティング ロジックによって識別されるクラスから派生している限り、アセンブリ内の任意の場所に配置できます。

特定のニーズに対応するために、MVC の「エリア」を確認できます。

于 2012-07-27T21:39:25.777 に答える
2

MVCのように聞こえAreasますが、探しているものです。

于 2012-07-27T21:44:13.683 に答える