我在ASP MVC中遇到了一个问题,试图在管理区域App/Areas/Admin/Account/Manage
中访问视图,但是该页面有时在根名称空间控制器App/Account/Manage
中提供用户配置文件页面。 / p>
似乎是在我对admin视图进行了更改之后,但是在重新启动调试器之后,它又可以正常工作。
我正在使用RazorGenerator,所以我怀疑这与它有关,但是我不想冒另一个开发者发布该应用程序而不更新razor generator的风险,并且管理员可以访问用户个人资料页面。
所有路由均已在{。{1}}中注册到Global.asax文件中
默认路由配置包括应用程序名称空间;
AreaRegistration.RegisterAllAreas();
并且管理区域注册中包含路由;
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional },
namespaces: new[] { "App.Controllers" }
);
我已经设置了一个断点,并且可以通过Admin控制器遵循代码,但是,一旦碰到context.MapRoute(
name: "Admin_default",
url: "Admin/{controller}/{action}/{id}",
defaults: new { action = "Index", id = UrlParameter.Optional },
namespaces: new[] { "App.Areas.Admin.Controllers" }
);
行,它就会尝试重定向到用户个人资料而不是admin视图。
有人遇到过类似的事情吗?