实体框架相当于nhibernate代码

时间:2016-06-09 05:22:29

标签: entity-framework nhibernate

使用Nhibernate,我能够覆盖框架方法GetLimitString以提供我自己的分页实现,就像你在gist中看到的那样。

实体框架中有类似内容吗?

1 个答案:

答案 0 :(得分:1)

你可以在EF中实现分页,只需使用Where()。OrderBy()。Skip()。Take() - 使用Where在哪里找到结果,OrderBy对它们进行排序,Skip(pagesize * page number)转到您想要的页面,然后选择以检索结果的页面大小,例如

        var result = DB.SharedIPs
            .Include(o => o.SharedIPTags)
            .Include(o => o.IPType)
                .Where(ip => 
                    ip.IPStatus != Models.IPStatusEnum.Deleted &&
                    (ip.Title.ToLower().Contains(searchPhrase) || ip.Product.ToLower().Contains(searchPhrase) || ip.Description.ToLower().Contains(searchPhrase)))
                .Skip(page * numRows)
                .Take(numRows)
                .ToList();