2011-12-13 52 views
1

如果我有一個包含多到一個參考對象B,其中對象B包含一個一對多的集合對象的C ...考慮下面的查詢對象的:在Linq-to-Nhibernate中,是否可以在.Select()之後使用.Fetch()?

IQueryable<A> query = getIQueryableSomehow(); 

List<B> resultList = query.Where(A => A.whatever == something).Select(A => A.B).Fetch(B => B.C).ToList(); 

我想要做類似這樣的事情,但我一直使用這段代碼得到一個空引用異常。是否有一個偷偷摸摸的技巧來實現這種查詢並獲取一堆Object B集合,或者它不可能?

謝謝!

回答

2

您可以指定取前裝入所有A,B,C,然後選擇燒烤

List<B> resultList = query 
    .Where(A => A.whatever == something) 
    .Fetch(A => A.B).ThenFetch(B => B.C) 
    .Select(A => A.B) 
    .ToList(); 
相關問題