使用IpagedList创建查询字符串列表

时间:2014-01-01 16:32:24

标签: c# asp.net-mvc-4 pagedlist

在控制器中我有:

int[] numbers = {1, 2, 3}; 
ViewBag.List = numbers;

然后在视图中我这样做:

@Html.PagedListPager(Model, 
page => Url.Action("Index", new { page, new[] = ViewBag.List  }))

我希望pagedlistpager能够生成如下链接:

/?numbers=1&numbers=2&numbers=3

换句话说,我将如何

Url.Action("index", new { [] numbers = Viewbag.List})

类似的东西,我不知道如何处理语法。

很明显,代码是错误的,因为我不能使用[]匿名类型,但也许有人可以帮我解决类似的东西或解决方案从viewbag生成链接。

使用ASP.net MVC 4进行IM。

1 个答案:

答案 0 :(得分:4)

有点难看,但可能有效:

@Html.PagedListPager(
    Model, 
    page => 
        Url.Action("Index", new { page = page }) + 
        "&" + 
        string.Join(
            "&", 
            ((int[])ViewBag.List).Select(x => "numbers=" + Url.Encode(x.ToString()))
        )
)

作为编写此汤的替代方法,您可以编写自定义HTML帮助程序来处理此问题。