如何从锚点中的href调用MVC操作方法?

时间:2016-04-30 22:01:45

标签: c# html asp.net-mvc

我正在使用以下标记。

@Html.ActionLink(@User.Identity.Name, "LogOut", "Account")

现在,我需要在锚点内添加一个span,因为我想使用Bootstrap中的字形。到目前为止,我的googlearch去了,没有办法使用上面的帮助器来指定它。所以,我已经将它重新设计为显式HTML,如下所示。

<a href="~/Account/LogOut">
  <span class="glyphicon glyphicon-log-out"></span>
  <span>@Global.LogOut @User.Identity.Name</span>
</a>

它有效该链接并非总是以第一个示例所针对的相同地址为目标。这是因为我首先得到语言的 en / se / 等。在基于MVC进行路由时,语言前缀保持不变,但在明确指定URL时会丢失。

如何指定对特定操作方法的调用?

2 个答案:

答案 0 :(得分:9)

尝试:

<a href="@Url.Action("LogOut", "Account")">
  <span class="glyphicon glyphicon-log-out"></span>
  <span>@Global.LogOut @User.Identity.Name</span>
</a>

答案 1 :(得分:1)

在视图中,您可以使用以下参数调用MVC操作:

<a href="@Url.Action("FilterCustomerGrid", "Customer", new { filterName = "CustomerID", filterValue = @Model.ID })">Click Here</a>;

在你的控制器端

public ActionResult FilterCustomerGrid(string filterName, string filterValue)
{
 return View("ImportExcel");
}