我有这个:
<li><a href="/Users/Index)" class="elements"><span>Clients</span></a></li>
哪个工作正常。但是,如果我已经在此页面或控制器上,例如/Users/Details
,我单击此链接,它会将我重定向到/Users/Index
.
href
无论我在网站上的当前位置如何,我如何才能获得正确的路径?
我有这个:
<li><a href="/Users/Index)" class="elements"><span>Clients</span></a></li>
哪个工作正常。但是,如果我已经在此页面或控制器上,例如/Users/Details
,我单击此链接,它会将我重定向到/Users/Index
.
href
无论我在网站上的当前位置如何,我如何才能获得正确的路径?
有几种方法可以实现这一点。您可以执行以下操作:
<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="@Url.Action("Index", "Users")" class="elements"><span>Clients</span></a>
</li>
尝试以下操作:
<a asp-controller="Users" asp-action="Index"></a>
(适用于 ASP.NET 5 和 MVC 6)
这里 '~' 指的是根目录,其中 Home 是控制器,Download_Excel_File 是 actionmethod
<a href="~/Home/Download_Excel_File" />
您可以使用以下内容进行修改
<li><a href="./Index" class="elements"><span>Clients</span></a></li>
额外的点表示您在同一个控制器中。如果您想将控制器更改为不同的控制器,那么您可以这样写
<li><a href="../newController/Index" class="elements"><span>Clients</span></a></li>
您还可以使用这种非常简化的形式:
@Html.ActionLink("Come back to Home", "Index", "Home")
其中:
Come back to Home
是页面上将出现的文本
Index
是视图名称
Home
是控制器名称
如果您想使用一种模式进行创建和更新您也可以这样做
C#
onclick="showInPopup('@Url.Action("CreateOrUpdate","Request",null,Context.Request.Scheme)','Create Request')"
onclick="showInPopup('@Url.Action("CreateOrUpdate","Request",new{id = item.id },Context.Request.Scheme)','Edit Request')"
JS
showInPopup = (url, title) => {
$.ajax({
type: "GET",
url: url,
success: function (res) {
$("#form-modal .modal-body").html(res);
$("#form-modal .modal-title").html(title);
$("#form-modal").modal('show');
}
})
}
如果使用 ASP.NET Core,您可以将接受的答案调整为:
<a href="@Url.Action("Index", null, new { area = string.Empty, controller = "User" }, @Context.Request.Scheme)">
<span>Clients</span>
</a>
替换@Request.Url.Scheme
为@Context.Request.Scheme