[英]MVC Route URL to Area controller
嗨,我想使用此 URL siteurl/admin
路由到我的siteurl/admin
(在管理區域內)。 我在RegisterArea(AreaRegistrationContext context)
函數中的代碼:
context.MapRoute(
"Admin_1",
"Admin",
new { controller = "AdminLogin", action = "Index" }
);
// the default route map
context.MapRoute(
"Admin_default",
"Admin/{controller}/{action}/{id}",
new { controller="AdminLogin", action = "Index", id = UrlParameter.Optional}
);
但是,我只能通過siteurl/Admin/AdminLogin
siteurl/Admin
而不是siteurl/Admin
轉到我想要的頁面。
如果我將自定義路線更改為:
context.MapRoute(
"Admin_1",
"",
new { controller = "AdminLogin", action = "Index" }
);
然后我可以在使用 url siteurl/
時轉到我想要的頁面( siteurl/
索引頁面)。
如何自定義 MapRoute 以使用siteurl/Admin
轉到我的頁面?
我試圖在一個只有家庭和管理員登錄控制器的空白項目中復制它,但似乎以下路線應該按預期工作:
context.MapRoute(
"Admin_default",
"Admin/{controller}/{action}/{id}",
new { controller="AdminLogin", action = "Index", id = UrlParameter.Optional}
);
您遇到的問題很可能是由於訂單造成的,就好像放在默認路由之后一樣,它失敗了,因為當提供“siteurl/Admin”時,它將首先匹配默認路由。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.