【问题标题】:Pagnation with LINQ to entities使用 LINQ 对实体进行分页
【发布时间】:2009-08-19 08:44:13
【问题描述】:

我有一个问题,我正在尝试为 MVC 项目使用辅助类。我得到错误,我必须以某种方式使用 OrderBy。

this.AddRange(source.Skip(PageIndex * PageSize).Take(PageSize))

怎么办? /M

【问题讨论】:

    标签: c# entity-framework


    【解决方案1】:

    EF 在这方面很宝贵(尽管 LINQ-to-SQL 会让你这样做);只需添加一个明确的OrderBy:

    source.OrderBy(x=>x.SomeId).Skip(PageIndex * PageSize).Take(PageSize)
    

    (或按名称排序,或其他任何有意义的东西)

    【讨论】:

    • 问题是它是一个通用类,所以它用于不同列的不同“表”
    • 那么这里的数据类型是什么?你在使用泛型还是什么?据我所知,您有两种选择; “在源头”订购它,即当您仍然知道数据是什么时;或使用反射来识别密钥并构建您自己的Expression<...> 以获得有用的东西。我会推荐第一个...
    • nvm :) 我只是在之前订购它们 :)
    猜你喜欢
    • 2011-01-23
    • 2015-12-01
    • 2010-09-05
    • 2013-06-09
    • 1970-01-01
    • 2017-06-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多