gpt4 book ai didi

c# - 如何从当前页面中的行子集手动填充 PagedList

转载 作者:行者123 更新时间:2023-11-30 20:33:08 27 4
gpt4 key购买 nike

我自己手动计算了一堆行,包括一些不在我的数据库中的附加数据。为了提高效率,我只根据页码和页面大小计算了当前页面中的行数。

我试图将其放入 PagedList 中,但这需要整个数据集,而不是我想显示的子集

请提供仅包含当前页面的自定义分页列表对象的完整示例。也许直接实现 IPagedList??

另一个问题是,在计算整个列表之前,我可能无法知道总行数。这真的有必要吗?

最佳答案

对于此任务,我建议使用现有的 NuGet 包,如下所示: https://www.nuget.org/packages/PagedList

在这个特定的库中,您可以生成要显示的元素子集,并从该列表创建 StaticPagedList

这是一个示例:

public class UserController : Controller
{
public object Index(int? page)
{
var pageIndex = (page ?? 1) - 1; //MembershipProvider expects a 0 for the first page
var pageSize = 10;
int totalUserCount; // will be set by call to GetAllUsers due to _out_ paramter :-|

var users = Membership.GetAllUsers(pageIndex, pageSize, out totalUserCount);
var usersAsIPagedList = new StaticPagedList<MembershipUser>(users, pageIndex + 1, pageSize, totalUserCount);

ViewBag.OnePageOfUsers = usersAsIPagedList;
return View();
}
}

请在此处查看源代码和其他示例:https://github.com/TroyGoode/PagedList

关于c# - 如何从当前页面中的行子集手动填充 PagedList,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40557622/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com