微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

我如何为路由添加整数列表

如何解决我如何为路由添加整数列表

| 我正在尝试将int []数组添加到我的Url.Action中,如下所示:
var routeData = new RouteValueDictionary();

for (int i = 0; i < Model.GroupsId.Length; i++) {
    routeData.Add(\"GroupsId[\" + i + \"]\",Model.GroupsId[i]);
}
在我看来:
Url.Action(\"Index\",routeData)
但是在html中,我得到了:
GroupsId%5B0%5D=1213&GroupsId%5B0%5D=1214
并不是:
GroupsId=1213&GroupsId=1214
我需要它是因为我有一个复选框列表,当我发布时,我将groupIds绑定到int [],然后传递给我查看带有Url.Action的导出按钮的位置,该按钮对我而言无法正常工作。     

解决方法

        由于重复的查询字符串参数名称,因此无法使用标准助手来生成此类url。不幸的是,事情就是这样。 这是您可以用来生成此类网址的替代方法:
var baseUrl = Url.Action(\"Index\",\"SomeController\",null,Request.Url.Scheme);
var uriBuilder = new UriBuilder(baseUrl);
uriBuilder.Query = string.Join(\"&\",Model.GroupsId.Select(x => \"groupsid=\" + x));
string url = uriBuilder.ToString();
    

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。