2011-02-11 33 views
0

SubFoo是Foo的子類型,但只有Bar顯示導航屬性Bar。所以急切地加載子類型特定實體

DB.Foos.Include('Bar') 

產生

一個指定的包含路徑無效。 EntityType'Foo'沒有聲明名稱爲'Bar'的導航屬性。

我該怎麼辦? (除了明顯的移動酒吧到美孚)

回答

1

一種方式是項目

var q = from f in DB.Foos 
     let b = (f as SubFoo).Bar 
     select new 
     { 
      Foo = f, 
      Bar = b 
     }; 
return q.AsEnumerable().Select(q => q.Foo); 
+1

令人驚訝的是,這工作得很好,謝謝。 – Martin 2011-05-11 12:08:43

1

什麼:

DB.Foos.OfType<SubFoo>().Include("Bar") 

,如果你想查詢一般在FOOS(不僅SubFoos這不起作用)和所有的SubFoos必須有酒吧加載..

+0

是的,所以這對我不起作用。 – Martin 2011-05-11 12:00:09

相關問題