繁体   English   中英

在Html.ActionLink中包含所有查询字符串参数

[英]Including All querystring parameters in Html.ActionLink

在我的页面中我有

 @using (Html.BeginForm("list", "menu", FormMethod.Get))
    {
        <div>
           Show categories:
            @Html.DropDownList("groupName", (SelectList)ViewBag.groups)
            <input id="Submit1" type="submit" value="Show" />
        </div>
    }

关于选项,用户选择我生成一个列表,我的地址中的查询字符串将如下:

localhost/menu/list?groupName=controlpanel

我的问题是当我使用HtmlActionLink时:

@Html.ActionLink("Title", "List", new { foo = item.foo})

我得到的结果是:结果是:

localhost/menu/List?foo=123

代替 :

 localhost/menu/List?foo=123&groupName=controlpanel

我错过了什么?

它不是一个内置的解决方案,即使它似乎准确地解决了你正在寻找的:

基于当前URL的ASP.NET MVC构建URL

要使用ActionLink,您需要包含要在查询字符串中显示的所有参数。 我认为最简单的方法是在模型上添加GroupName属性(或者在ViewBag中添加其他样本)。 然后你可以这样做:

@Html.ActionLink("Title", "List", new { foo = item.foo, groupName = Model.GroupName })

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM