Я создал контроллер под названием ApplicationController, который отправляет общую информацию ко всем моим представлениям, каждый контроллер в моей системе наследует от нее.Html.ActionLink() добавляет нежелательную папку, когда actionName как "/ controllerName/action /"
В частичный вид я использую Html.ActionLink():
@Html.ActionLink("Link Title", "/MyController/MyAction")
// OUTPUT: <a href="/MyIISVirtualDirectory/Application/MyController/MyAction">Link Title</a>
Если я нажмите на ссылку я получить 404.
Но если я использую:
@Html.ActionLink("Link Title", "MyAction", "MyController")
// OUTPUT: <a href="/MyIISVirtualDirectory/MyController/MyAction">Link Title</a>
Everything работает отлично.
Почему в первом примере метод выводит/Application /? Как я могу удалить это по умолчанию?
Возможно, потому что помощник ActionLink ожидает имя действия, а не путь к действию? –
Если вы собираетесь пройти путь, просто создайте ссылку «вручную» вместо использования ActionLink. Но если вы хотите использовать ActionLink, то передавайте только имя действия и, возможно, имя контроллера. –
Вы посмотрели документы? http://msdn.microsoft.com/en-us/library/system.web.mvc.html.linkextensions.actionlink%28v=vs.108%29.aspx этот вопрос по существу сводится к: «Почему я не могу это сделать? это неподдерживаемым образом?«если вам действительно нужно или нужно сделать это таким образом, реализуйте свой собственный ActionLinkHelper – solidau