IQueryable(Of T)的分页扩展方法

时间:2014-02-18 01:25:37

标签: vb.net linq entity-framework extension-methods iqueryable

我编写了以下方法,试图扩展IQueryable<T>以提供与我的自定义寻呼机控件集成的通用分页。但是,当我尝试在IQueryable<Account>上调用该方法时,我得到以下编译器错误:

  

BC30456:'Page'不是'System.Linq.IQueryable(Of。)的成员   OrgName.ProjName.Account)”

来源:

Imports System.Runtime.CompilerServices

Module Paging
    <Extension()>
    Public Function Page(Of T)(source As IQueryable(Of T), pageIndex As Integer, pageSize As Integer, ByRef recordCount As Integer) As IQueryable(Of T)
        recordCount = source.Count()
        Return source.Skip(pageIndex * pageSize).Take(pageSize)
    End Function
End Module

模块文件与Account业务对象(OrgName.ProjName)位于同一程序集和命名空间中。 (名称已被更改以保护无辜者。)

我不确定上述内容与此问题中接受的答案有何不同(显然除语言外): Transform LINQ IQueryable into a paged IQueryable using LINQ to NHibernate

知道我做错了吗?

1 个答案:

答案 0 :(得分:1)

确保您的模块是公共的,并确保在要使用扩展方法的文件中使用相应的“Imports”语句。

干杯