2017-04-05 66 views
0

我得到以下结构:LINQ C#包括嵌套实体

A类有一个成员:List<ClassB>

B类有一个成员:List<ClassC>

谁是有可能得到对中的一个特定对象类List<B>的一个特定对象及其所有对象List<ClassC>

以另一种方式:如何获得List<ClassC>对于特定的ClassB

+0

[Select和SelectMany之间的差异可能重复](http://stackoverflow.com/questions/958949/difference-between-select-and-selectmany) – GSerg

+0

您使用EF并且是您的模型的那些类实体?你怎么知道你想获得哪个'ClassB'对象? – octavioccl

回答

0

找到了解决方案:

_db.ClassA.Include(B => b.ClassB) 。然后包含(c => c.ClassC);

感谢您的回答!

1

尝试:

var a_list = new List<A>(); 
var c_list = a_list.First(a => [your criteria here]) 
        .b_list 
        .First(b => [your criteria here]) 
        .c_list; 
0

可以尝试(以避免任何例外)

ClassA classAItem = yourClassAList.FirstOrDefault({your A condition}) 

    if(classAItem != null) 
    { 
     ClassB classBItem = classAItem.yourClassBList.FirstOrDefault({your B condition}); 

     if(classBItem != null) 
     { 
     List<ClassC> classCItem = classBItem.yourClassCList); 
     } 
}