【发布时间】:2016-02-02 03:35:27
【问题描述】:
如何为区域指定默认操作
我已经定义了我的区域和它的工作正常
/admin/
但是,如果我直接浏览到 /admin/,它似乎会点击标准控制器而不是该区域,并且没有标准控制器区域,因此它是 404
有没有办法指定该区域有一个默认的控制器/动作,还是我需要定义一个自定义路由。
【问题讨论】:
标签: c# asp.net-mvc asp.net-mvc-areas
如何为区域指定默认操作
我已经定义了我的区域和它的工作正常
/admin/
但是,如果我直接浏览到 /admin/,它似乎会点击标准控制器而不是该区域,并且没有标准控制器区域,因此它是 404
有没有办法指定该区域有一个默认的控制器/动作,还是我需要定义一个自定义路由。
【问题讨论】:
标签: c# asp.net-mvc asp.net-mvc-areas
您可以通过在RegisterArea 中指定area 来做到这一点
public override void RegisterArea(AreaRegistrationContext context)
{
context.MapRoute(
"admin", // Route name
"admin/{controller}/{action}/{id}", // URL with parameters
new { controller = "YourControllerName", action = "YourActionName", area = "admin", id = UrlParameter.Optional } // Parameter defaults
);
}
现在如果你浏览到admin,它会直接重定向到RegisterArea中指定的动作
【讨论】: