我有一个包含很多包含的查询,我想知道我是否可以对一些包含进行拍摄。
例如,这是我的一个查询,其中(非法)Take 说明了我想要做什么。
var primaryLocation = context.Locations
.Include("PhoneNumbers")
.Include("Invoices").Take(50)
.Include("Invoices.Items")
.Include("Schedules")
.Include("Staffs")
.SingleOrDefault(d => d.Id == locationId);
目前我能想到的唯一方法是这样的:
var primaryLocation = context.Locations
.Include("Invoices")
.Include("Etc")
.SingleOrDefault(d => d.Id == locationId);
primaryLocation.Invoices = primaryLocation.Invoices.Take(50).ToList();
我不想那样做,因为这意味着从数据库中拉回整个 Invoice 列表,而我不需要。
有没有一种方便的方法可以将 Take 构建到我的查询中?