1

我希望 Troy Goode 或其他做过同样事情的人可以在这里提供帮助。我对 ASP.NET MVC 比较陌生。

我有一个带有 View 的 ASP.NET MVC3 应用程序,我在其中实现了两个 PagedList 控件,每个控件显示不同的信息源。

PagedList 控件是否提供了一种方法来跟踪 View 上其他 PagedLists 的当前页码?例如,如果我有:

PagedList1 (currently on page 1 of 10)
PagedList2 (currently on page 4 of 10)

我更改了 PagedList1 上的页面,在 View 重新加载后,PagedList2 将保留在第 4 页上。

我考虑过使用 Session 变量,但想知道是否有更优雅的解决方案。

谢谢你。

4

1 回答 1

6

我终于想出了一个办法。

型号

public class ChequeSearch
{
    //Search criteria
    [DisplayName("Draft Number")]
    public string DraftNumber { get; set; }

    [DisplayName("Payee")]
    public string Payee { get; set; }

    //Search results
    public int? SearchResults1Page { get; set; }
    public int? SearchResults2Page { get; set; }
    public IPagedList<Cheque> SearchResults1 { get; set; }
    public IPagedList<Cheque> SearchResults2 { get; set; }
    public string SearchButton { get; set; }
}

查看

在搜索结果表1下:

@Html.PagedListPager(Model.SearchResults1,
        page => Url.Action("Search", new RouteValueDictionary() {
            { "SearchResults1Page", page },
            { "SearchResults2Page", Model.SearchResults2Page },
            { "DraftNumber", Model.DraftNumber },
            { "Payee", Model.Payee }
        }),
        PagedListRenderOptions.DefaultPlusFirstAndLast)

在搜索结果表2下:

@Html.PagedListPager(Model.SearchResults2,
        page => Url.Action("Search", new RouteValueDictionary() {
            { "SearchResults2Page", page },
            { "SearchResults1Page", Model.SearchResults1Page },
            { "DraftNumber", Model.DraftNumber },
            { "Payee", Model.Payee }
        }),
        PagedListRenderOptions.DefaultPlusFirstAndLast)

感谢您的关注。

于 2012-09-07T01:15:36.920 回答