使用 Linq 在 Gridview 中分页

问题描述 投票:0回答:1

我知道我的各种其他问题的类型已在 SO 中列出,但我认为我的问题与现有的问题完全不同,或者我的方法不同。

我有一个名为 tblListing 的表,其中有 108 列,其中有 170000 条记录,并且还在增加。在我的管理部分,我列出了 20 列。但问题是它需要一分多钟才能在 gridview 中显示。

之前,我使用datatable来显示记录,但是页面和系统变得非常缓慢。现在我应用了 LINQ,并且正在使用 .Take(20),但它只显示 20 条记录。

所以我想在分页时一次加载20条记录。

请帮忙。任何示例代码或参考都将受到高度赞赏。

c# asp.net linq gridview pagination
1个回答
3
投票

看起来这篇关于 Paging With LINQ 的文章可能对您有帮助:

相关代码如下:

public static class PagingExtensions
{
    //used by LINQ to SQL
    public static IQueryable<TSource> Page<TSource>(this IQueryable<TSource> source, int page, int pageSize)
    {
        return source.Skip((page - 1) * pageSize).Take(pageSize);
    }

    //used by LINQ
    public static IEnumerable<TSource> Page<TSource>(this IEnumerable<TSource> source, int page, int pageSize)
    {
        return source.Skip((page - 1) * pageSize).Take(pageSize);
    }
}
© www.soinside.com 2019 - 2024. All rights reserved.