ASP.NET MVC 3 - Ajax.ActionLink() Маршрутизация
Этот ActionLink отлично работает, когда он находится за пределами области, но как только я переместил его в него, он начал добавлять имя контроллера в URL:TrainingandDevelopment/MakeCall
Он должен просто отображать примитивное представление, которое он вызывает.
Ajax.ActionLink("Click to Get HRMS Folder", "MakeCall", new { folderName = "HRMS" }, new AjaxOptions()
{
UpdateTargetId = "placeHolder",
InsertionMode = InsertionMode.Replace,
LoadingElementId = "indicator",
HttpMethod = "POST",
})
2 ответа
Добавьте пустую область в значения вашего маршрута
Ajax.ActionLink("Click to Get HRMS Folder",
"MakeCall",
new { folderName = "HRMS", area= ""},
new AjaxOptions() {
UpdateTargetId = "placeHolder",
InsertionMode = InsertionMode.Replace,
LoadingElementId = "indicator",
HttpMethod = "POST",
})
MSDN - при создании приложения ASP.NET MVC, включающего области, необходимо определить маршруты, которые отправляют запросы в соответствующую область, на основе URL-адреса запроса. Чтобы зарегистрировать маршрут, который может отвечать на специфичные для области запросы, вы добавляете в маршрут класс Routes. Ваш класс Routes наследуется от класса AreaRegistration. Вы можете присвоить области имя, переопределив свойство AreaName, и настроить маршруты для области, переопределив метод RegisterArea.