У меня проблема с маршрутизацией и областями, как гласит название. У меня есть раздел областей в моем проекте, в котором есть только одна область. Там есть контроллер политики. Снаружи в проекте есть папка контроллера с LoginController.Проблема маршрутизации с областями
Когда я пытаюсь добраться до URL-адреса «BoB/Login/ChangeSection» (BoB - это имя проекта, Login - контроллер, ChangeSection - действие), он отправляется на «BoB/Policy/Login». Это означает, что регистрация области внутри области политики захватывает запрос и помещает префикс политики спереди, когда этого не должно быть.
Вот мой проект RouteConfig
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "BoBHome", action = "Index", id = UrlParameter.Optional },
namespaces: new string[] { "BoB.Controllers" }
);
и здесь регистрация Площадь
public override void RegisterArea(AreaRegistrationContext context)
{
context.MapRoute(
name: "BoBPolicy_default",
url: "Policy/{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional },
namespaces: new string[] { "BoB.Areas.BoBPolicy.Controllers" }
);
}
Я был под впечатлением пространств имен будет держать это произошло, но это явно не так. Любая помощь приветствуется.
Некоторая дополнительная информация:
Это происходит из другого проекта, который не MVC так Переадресовывание выглядит следующим образом:
Response.Redirect("/BoB/BoBLogin/ChangeSection?controller=PolicyOverview");