ASP MVC href к контроллеру / просмотр
у меня есть это:
<li><a href="/Users/Index)" class="elements"><span>Clients</span></a></li>
который отлично работает. Но если я уже на этой странице или на контроллере, например /Users/Details
и я нажимаю на эту ссылку, он перенаправляет меня к /Users/Index
.
как я могу получить правильный путь в href
независимо от моего текущего положения на сайте?
6 ответов:
есть несколько способов, которые вы можете выполнить это. Вы можете сделать следующее:
<li> @Html.ActionLink("Clients", "Index", "User", new { @class = "elements" }, null) </li>
или такой:
<li> <a href="@Url.Action("Index", "Users")" class="elements"> <span>Clients</span> </a> </li>
в последнее время я делаю следующее:
<a href="@Url.Action("Index", null, new { area = string.Empty, controller = "User" }, Request.Url.Scheme)"> <span>Clients</span> </a>
результат был бы
http://localhost/10000
(или с любым портом, который вы используете), который будет добавлен в структуру URL, например:http://localhost:10000/Users
Я надеюсь, что это помогает.
Вы можете изменить следующие
<li><a href="./Index" class="elements"><span>Clients</span></a></li>
дополнительная точка означает, что вы находитесь в том же контроллере. Если вы хотите изменить контроллер на другой контроллер, то вы можете написать это
<li><a href="../newController/Index" class="elements"><span>Clients</span></a></li>
попробуйте следующее:
<a asp-controller="Users" asp-action="Index"></a>
(действительно для ASP.NET 5 и MVC 6)