Ian*_*ink 21 c# linq entity-framework
我有以下内容,我试图在这些国家的城市中包含人们的地址.
Country country = _db.Countries
.Include(p=>p.Cities.People.????)
.Where(....)
Run Code Online (Sandbox Code Playgroud)
不确定如何工作?
Rog*_*nez 34
您必须为对象层次结构树中的每个级别添加.Include调用:
var result = db.Countries
.Include(m => m.Cities)
.Include(m => m.Cities.Select(v => v.People))
.Where(....)
Run Code Online (Sandbox Code Playgroud)
编辑:D.Stanley的答案在紧凑的代码方面更好,并且也有效,我倾向于在模块性方面更喜欢这种语法.
D S*_*ley 29
从文档:
要包含集合,集合和引用两个级别:
Run Code Online (Sandbox Code Playgroud)query.Include(e => e.Level1Collection.Select(l1 => l1.Level2Collection.Select(l2 => l2.Level3Reference))).
所以在你的情况下尝试
Country country = _db.Countries
.Include(c=>c.Cities.Select(
cc => cc.People.Select(
p => p.Addresses)))
.Where(....)
Run Code Online (Sandbox Code Playgroud)
访问此扩展方法需要该指令
using System.Data.Entity;
| 归档时间: |
|
| 查看次数: |
23019 次 |
| 最近记录: |