ObjectQuery.Include() => ObjectQuery.IncludeAll()
Posted
技术标签:
【中文标题】ObjectQuery.Include() => ObjectQuery.IncludeAll()【英文标题】: 【发布时间】:2011-10-12 18:47:45 【问题描述】:以下示例在查询客户时检索一组相关实体。我在哪里可以找到递归遍历关系图并自动包含它们的样本?
using(Entities context = new Entities())
return context.Customers
.Include("Address")
.Include("Address.State")
.Include("Address.State.Country")
.Include("Phone")
.Include("Phone.PhoneType").Single(c => c.LastName.StartsWith("Jo");
对比
using(Entities context = new Entities())
return context.Customers.IncludeAll().Single(c => c.LastName.StartsWith("Jo");
【问题讨论】:
有这样的方法是危险的。您最终可能会加载整个数据库。 【参考方案1】:这个怎么样:
context.Customers.Include(c => c.Address.State.Country)
.Include(c => c.Phone.PhoneType)
.Single(c => c.LastName.StartsWith("Jo");
您不希望包含所有内容,因为并非在所有情况下您都需要所有内容。
【讨论】:
以上是关于ObjectQuery.Include() => ObjectQuery.IncludeAll()的主要内容,如果未能解决你的问题,请参考以下文章
g:formatDate 作为 g:textField 上的值