如何使用c#中的linq语句从我的数据库中返回一定数量的项目

时间:2013-05-06 15:52:08

标签: c# linq unit-of-work

我在我的c#代码中调用了我的数据库,如下所示:

var filter = new PrioritizeSessionFilter()
            .Add(DbTable.PrioritizeSession.Columns.IsArchived, Comp.Equals, false);

var list = UnitOfWork.PrioritizeSessions.Query(filter);

有没有办法我一次只能退回10件物品,而不是一次退回所有物品?我可以创建一个过滤器吗?

2 个答案:

答案 0 :(得分:7)

您可以使用Take扩展方法:

// get 10 elements
var myList = UnitOfWork.PrioritizeSessions.Query(filter).Take(10);

答案 1 :(得分:1)

虽然walkhard是正确的,但是你应该在使用take时使用skip,这样如果你需要不同的10个项目,你也可以返回它们

 var amyList = UnitOfWork.PrioritizeSessions.Query(filter).Skip(skip).Take(10).ToList();