gpt4 book ai didi

c# - 使用 LINQ 进行 ASP MVC 分页?

转载 作者:太空宇宙 更新时间:2023-11-03 21:32:49 24 4
gpt4 key购买 nike

我有 100 条记录。为此,我需要 LINQ:

int pageNumber = get from user; // for example 2 , 3 ,...
if pageNumber == 2
return records 20 to 29

谢谢!

最佳答案

你想要的可能是以下内容:

var itemsToShow = items.OrderBy(p => p.Id)
.Skip((currentPage - 1) * numPerPage)
.Take(numPerPage);

您通过 Id 属性对页面进行排序,并且您有变量 currentPage 保存当前页面的编号和 numPerPage 保存的数量每页项目。

然后您可能希望创建一个包含分页信息的类型,以使您的生活更轻松。有点像

public class PagingInfo
{
public int ItemsPerPage { get; set; }
public int NumItems { get; set; }
public int CurrentPage { get; set; }
public int TotalPages
{
get
{
return Math.Ceiling((double)NumItems/ItemsPerPage);
}
}
}

那么您的 currentPage 将是 pagingInfo.CurrentPage 而您的 numPerPage 将是 pagingInfo.ItemsPerPage。此外,您还有一个属性可以获取有用的总页数。这是一种很好的方法,因此您可以在 View 模型上传输有关分页的信息。

关于c# - 使用 LINQ 进行 ASP MVC 分页?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23452339/

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