这个页面很好地展示了如何处理不同的场景来获取数据:http: //msdn.microsoft.com/en-us/library/gg671236%28v=vs.103%29.aspx
如何选择一个集合和两个参考?(行有一个 ProductId 和一个 AddressId,我想同时包含这两个...)
换句话说,我应该把我的放在哪里Level1Reference2
:
query.Include(e => e.Lines.Select(l1 => l1.Level1Reference))
// Level1Reference2?
- 要包含单个参考:
query.Include(e => e.Level1Reference)
- 要包含一个集合:
query.Include(e => e.Level1Collection)
- 要包括一个参考,然后是一个参考向下一级:
query.Include(e => e.Level1Reference.Level2Reference)
- 要包含一个参考,然后是一个向下一级的集合:
query.Include(e => e.Level1Reference.Level2Collection)
- 要包含一个集合,然后是一个参考,向下一级:
query.Include(e => e.Level1Collection.Select(l1 => l1.Level2Reference))
- 要包含一个集合,然后包含一个向下一级的集合:
query.Include(e => e.Level1Collection.Select(l1 => l1.Level2Collection))
- 要包含一个集合,然后是一个参考,向下一级:
query.Include(e => e.Level1Collection.Select(l1 => l1.Level2Reference))
- 包括一个集合、一个引用和一个向下两级的引用:
query.Include(e => e.Level1Collection.Select(l1 => l1.Level2Reference.Level3Reference))
包括一个向下两级的集合、一个集合和一个引用:query.Include(e => e.Level1Collection.Select(l1 => l1.Level2Collection.Select(l2 => l2.Level3Reference)))