Asp.net mvc 如何在MVC Razor视图中动态创建ActionLink

Asp.net mvc 如何在MVC Razor视图中动态创建ActionLink,asp.net-mvc,razor,Asp.net Mvc,Razor,我可以使用如下函数中的代码重定向用户: window.location.href = "@Url.Action("ShippingSummary", "Shipping", new { id = 2 })" 我在变量中有id,但我需要动态地将其分配给ActionLink。像这样的 var ID = 2; window.location.href = "@Url.Action("ShippingSummary", "Shipping", new { id = ID })" 我得到一个未定义I

我可以使用如下函数中的代码重定向用户:

 window.location.href = "@Url.Action("ShippingSummary", "Shipping", new { id = 2 })"
我在变量中有id,但我需要动态地将其分配给ActionLink。像这样的

var ID = 2;
window.location.href = "@Url.Action("ShippingSummary", "Shipping", new { id = ID })"

我得到一个未定义ID的错误。我尝试先将actionlink创建为字符串,但没有成功。我怎样才能让它工作呢?

在这个例子中,您混合了Javascript和C。Javascript将在浏览器中执行,但C#将在服务器上执行,因此不能像这样混合使用

相反,您应该:

var ID = 2;
window.location.href = "@Url.Action("ShippingSummary", "Shipping")" + "?id=" + ID;

在本例中,Razor将发出控制器操作路由的第一部分,然后您可以将所需的查询字符串参数添加到路径中。

在本例中,您将混合使用Javascript和C。Javascript将在浏览器中执行,但C#将在服务器上执行,因此不能像这样混合使用

相反,您应该:

var ID = 2;
window.location.href = "@Url.Action("ShippingSummary", "Shipping")" + "?id=" + ID;
在本例中,Razor将发出控制器操作路由的第一部分,然后您可以将所需的查询字符串参数添加到路径中