我在主/顶部区域有一个联系人控制器,我有一个名为“联系人”的区域。
如果我在注册顶级路由之前注册我的区域,我会收到 POST 404 到联系人控制器:
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
ModelBinders.Binders.DefaultBinder = new NullStringBinder();
RouteConfig.RegisterRoutes(RouteTable.Routes);
}
而且,如果我在路由之后注册我的区域,我的联系人控制器的 404 将消失,但我到联系人区域的路由现在是 404。
...记录了许多重复的控制器名称问题,但我还没有找到该区域与控制器名称相同的特定场景。
...可能很容易解决。非常感谢帮助。:-D
fwiw,我正在使用显式命名空间注册我的联系人区域:
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional },
namespaces: new[] { "MyMvcApplication.Controllers" }
);
}