2
我有一個ASP.NET MVC網站和一個名爲'Admin'的區域項目。即使在不同的區域,控制器名稱也必須是唯一的嗎?
到目前爲止,路由工作正常,但似乎我不能在每個項目中有2個同名的控制器。
我想下面的網址將兩者很好地工作:
但事實證明,訪問既可以當我得到以下錯誤:
控制器名稱'Home'是以下類型之間曖昧:
MyProject.Website.Controllers.HomeController
MyProject.Admin.Controllers。 HomeController
這是正常的,還是有什麼問題,我的設置?
順便說一句,這是我的路由代碼:
主要項目:
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
Admin.Routes.RegisterRoutes(routes);
routes.MapAreaRoute(
"Main",
"default_route",
"{controller}/{action}/{URLName}",
new { controller = "Home", action = "Index", URLName = "" },
new string[] { "MyProject.Website" }
);
}
區項目:
public static void RegisterRoutes(RouteCollection routes)
{
routes.MapAreaRoute(
"Admin",
"Admin_Default",
"Admin/{controller}/{action}",
new { controller = "Home", action = "Index" },
new string[] { "MyProject.Admin" }
);
}
謝謝,這真的很有幫助。在添加命名空間後很好地工作。 – jesperlind 2009-09-13 22:40:37