0
如果我有一个服务直接延伸DomainService
是否可以在我的服务端查询中使用Take
和Skip
参数。在RIA服务中访问查询参数服务端
例如,这里是我的简单的服务...
[EnableClientAccess()]
public class StaffService : DomainService
{
[Query]
public IQueryable<StaffMember> GetStaffMembers()
{
var list = new List<StaffMember>
{
new StaffMember { Id=1, Name = "Bobby", JobDescription = "Driver" },
new StaffMember { Id=2, Name = "Robert", JobDescription = "Driver's Mate" },
new StaffMember { Id=3, Name = "Maxwell", JobDescription = "Diver" },
new StaffMember { Id=4, Name = "Samuel", JobDescription = "Raver" }
};
return list.AsQueryable();
}
}
和我简单的查询...
context.Load<StaffMember>(context.GetStaffMembersQuery().Skip(1).Take(2));
这工作,只有4行返回的2,但如果这是访问一个数据库(例如使用NHibernate),它将不得不返回所有的行,然后丢弃它们。
我想查找Skip
和Take
参数,以便我可以从数据库中返回最小数据。
我还没有证实这个答案,但如果MSDN说这是真的,那么它一定是。 – BenCr