0

従来の既定の ASP.NET MVC ルートがあります。

  System.Web.Routing.RouteTable.Routes.MapRoute(
      "Default",
      "{controller}/{action}/{id}",
      new { controller = "Home", action = "Index", id = UrlParameter.Optional },
  );

エリア内に別の HomeController を配置したいので、次を追加しました。

  System.Web.Routing.RouteTable.Routes.MapRoute(
      "Default",
      "{controller}/{action}/{id}",
      new { controller = "Home", action = "Index", id = UrlParameter.Optional }, 
      typeof(MVCSite.Controllers.HomeController).Assembly
  );

そのため、このルートはルート ホーム コントローラー専用です。

しかし、これでサイトを開始すると、404 エラーが発生します。

何故ですか?この制約を指定することはできませんか?

ありがとう!

4

1 に答える 1

0

次を使用してこれを解決できました:

RouteTable.Routes.MapRoute(
  "Default", 
  "{controller}/{action}/{id}", 
  new { controller = "Home", action = "Index", id = UrlParameter.Optional }, 
  new String[] { typeof(HomeController).Namespace 
});

ありがとう、ミゲル

于 2013-04-12T22:29:09.687 に答える