Ответ 1
Нашел свою проблему. Я изменил имя области, но не смог обновить свойство AreaName в Регистрации области.
Я использую Razor в MVC 4. Я пытаюсь сделать URL из представления в области для действия контроллера в другой области. Следующее возвращает пустую строку:
@Url.Action("Action", "MyController", new { area = "OtherArea" })
Я провел некоторое тестирование с другими параметрами, и следующее возвращает URL-адрес, но это неправильно:
@Url.Action("Action", "MyController", new { parameter = 1 })
В результате URL-адрес/App/IncorrectArea/My/Action? parameter = 1. Обратите внимание на неправильную область; Url.Action предполагает (поскольку я не прошел область), что контроллер живет в текущей области, которой он не является!
Любые идеи?
Нашел свою проблему. Я изменил имя области, но не смог обновить свойство AreaName в Регистрации области.
У меня была та же проблема, потому что я изменил метод RegisterRoutes
от {controller}/{action}/{id}
до {action}/{id}
только для того, чтобы испустить имя контроллера из URL