タグ付けされた質問 「asp.net-mvc-areas」

9
アクションリンクでエリア名を指定する方法は?
mvc 2アプリの2つの異なる領域から使用している共有マスターページがあります。マスターページには、現在コントローラーとアクションを指定するアクションリンクがありますが、もちろん、リンクが間違っている場合、リンクは機能しません。areaパラメータを取るactionlinkのオーバーロードはありません。それは可能ですか?


12
プロジェクトで同じ名前の複数のコントローラーに問題がある
ASP.NET MVC 3プロジェクトで次のエラーが発生しています。 「ホーム」という名前のコントローラーに一致する複数のタイプが見つかりました。これは、このリクエストを処理するルート( 'Home / {action} / {id}')が、リクエストに一致するコントローラーを検索するための名前空間を指定していない場合に発生する可能性があります。その場合は、「namespaces」パラメーターを受け取る「MapRoute」メソッドのオーバーロードを呼び出して、このルートを登録します。 「ホーム」のリクエストにより、次の一致するコントローラーが見つかりました:MyCompany.MyProject.WebMvc.Controllers.HomeController MyCompany.MyProject.WebMvc.Areas.Company.Controllers.HomeController デフォルトのコントローラーフォルダーにHomeControllerがあり、クラス名はMyCompany.MyProject.WebMvc.Controllers.HomeControllerです。 私のglobal.asaxのRegisterRoutesメソッドは次のようになります。 public static void RegisterRoutes(RouteCollection routes) { routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); routes.MapRoute( "Default", // Route name "{controller}/{action}/{id}", // URL with parameters new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults ); } 次に、Companyという領域があり、その領域の既定のコントローラーフォルダーにHomeControllerがあり、クラス名はMyCompany.MyProject.WebMvc.Areas.Company.Controllers.HomeControllerです。 CompanyAreaRegistrationファイルのRegisterAreaメソッドは次のようになります。 public …

3
すべてのエリアで同じレイアウトを使用するように強制します
私は次のプロジェクト構造を持っています: / Views / Shared / _Layout; / Areas / Area1 / Views / ControllerName / Index; ..。 / Areas / AreaN / Views / ControllerName / Index。 すべての領域に_Layoutを基本レイアウトとして使用するように強制する方法はありますか? _ViewStartファイルを追加せずに(たとえば、ルーティング構成を介して)それを行う方法はありますか? 関連項目: ASP.NET MVC 3かみそりViewStartファイルでさまざまなレイアウトを指定するにはどうすればよいですか?
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.