是否可以让Html.ActionLink自动添加URL参数?

时间:2009-04-09 08:40:52

标签: asp.net-mvc

我想要的是所有网址都包含某个参数,而不必将其传递给视图,并通过routevalues参数将其添加到ActionLink。我的网站中有一个部分,我想跟踪所有链接的“返回参数”。它适用于表单,因为Html.BeginForm已将操作设置为当前确切的URL。

所以,如果我所在的页面是

/MyController/MyAction/300?ReturnTo=100

我输出

Html.ActionLink("Next Screen", "MyOtherAction")

我想看看

<a href="/MyController/MyOtherAction/300?ReturnTo=100">Next Screen</a>

无需执行

Html.ActionLink("Next Screen", "MyOtherAction", new {ReturnTo = Model.ReturnTo})

2 个答案:

答案 0 :(得分:2)

您可以编写自己的HtmlHelper扩展,通过调用Html.ActionLink并组合查询字符串来实现此目的。使用ViewContext获取当前查询字符串。

答案 1 :(得分:1)

试试这个:

Html.ActionLink("Next Screen", "MyOtherAction", new {Model.ReturnTo})

此链接现在将以您希望的方式显示。