Я генерирующая ссылку, используя код нижежереха mvc4 HTML хелпер не плывет к ожидаемой странице
@Html.ActionLink("Search", "Index", "Properties")
на стороне клиента это делает
<a href="/Properties">Search</a>
Глядя на ссылку выше я ожидал получил в
controller: Properties
action: Index
Когда я нажимаю ссылку я осуществлять навигацию http://localhost:49878/Properties/
, и я получаю ошибку
Ошибка HTTP 403.14 - Forbidden Веб-сервер настроен не перечислить содержимое этого каталога.
Если я перехожу на http://localhost:49878/Properties/Index
, я получаю ожидаемую страницу.
Почему?
Я посмотрел на RouteConfig
, чтобы попытаться понять это и глядя на маршрут по умолчанию
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
Я думал, что ниже будет решить эту проблему, но это не так, то почему?
routes.MapRoute(
name: "Search",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Properties", action = "Index", id = UrlParameter.Optional }
);
У вас есть папка в вашем решении с именем 'Properties'? –
Нет, но у меня есть контроллер с именем properties – tony09uk
Вы уверены? (по умолчанию VS создаст один). И вы получите ту же ошибку, если не хотите (скажем) '.../Content' –