2011-06-28 2 views
0

MVCに慣れるために凝視していますが、いくつかの学習プロジェクトを経てから、私はもっと大きな咬合を取る準備が整いました。mvc3:コントローラ構造を提案する

私はこのような構造に取り組んでいます。
/管理/インデックス
/管理者/ユーザー/作成:読み:アップデートを:削除:リスト
/管理/ニュース/作成:読み:アップデートを:削除:リスト

最後の二つを考えると、私は考えています私は、コントローラ
管理
ADMINUSER
AdminNews

持っている必要があることを...と私はこれらのフォルダに保存されたビューを持っている必要があることを
/ビュー/管理
/ビュー/ A dmin/User
/Views/Admin/News

上記の音は問題ありませんか?

最後に、これらのルートをこれらのコントローラに設定するにはどうすればよいですか?

私はこのようなものを試しましたが、うまくいきませんでした。

routes.MapRoute(
    "Admin/User", // Route name 
    "/Admin/{controller}/{action}/{id}", // URL with parameters 
    new {controller = "AdminUser", action = "Index", id = UrlParameter.Optional} // Parameter defaults 
    ); 

答えて

1

私はMVCに慣れ親しんでいて、いくつかの小さな学習プロジェクトの後で、私は今より大きな咬合をとる準備ができています。

asp.net mvcを学び始めて、管理パネルを実装しようとしているなら、私は "Areas"を提案します。 Walkthrough: Organizing an ASP.NET MVC Application using Areasをご覧ください。

+0

情報とリンクをありがとうございます。私はサンプルソリューションをダウンロードしましたが、それは私が探しているものです。 –

0

管理者用の領域も使用できます。

1

フィーチャーを使用します。これを見て

  • 管理
  • ADMINUSER
  • AdminNews

あなたは管理エリアを追加し、その領域の下に別々のコントローラを持つことができることを考えるように私をリード。あなたのURLは/ Admin/Userと/ Admin/Newsなどになるでしょう。

1

私は、管理タイプの領域には理想的なので、あなたが見たいと思うかもしれない地域に同意します。ウェブで

しかし、そのルートをダウンしていない場合は、あなたの質問に多少答えてください。

最初。ビューはフォルダにあります。

Views/Admin 
Views/AdminUser 
Views/AdminNew 

秒。ルートは単にプロジェクト内で最初に設定されたデフォルトルートである必要があります i。e

{controller}/{action}/{id} 

ここでのアクションは、Admin、AdminUser、およびAdminNewコントローラから公開されるメソッドになります。

ニュースについて
routes.MapRoute(
"AdminUser", 
/Admin/User/{action},{id}, 
new {controller = "AdminUser", action = "Index", id = UrlParameter.Optional} 
); 

と同様に:あなたはあなたのような何かを行うことができます言及した経路を持つように

。私は、デフォルトルートがそれを捕まえると思う。

希望に役立ちます。

関連する問題