SubFoo是Foo的子类型,但只有Bar显示导航属性Bar。所以
DB.Foos.Include('Bar')
生成
指定的包含路径无效。 EntityType'Foo'不会声明名为'Bar'的导航属性。
我该怎么办? (除了明显将Bar移到Foo之外)
答案 0 :(得分: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 :(得分:1)
怎么样:
DB.Foos.OfType<SubFoo>().Include("Bar")
如果你想通过Foos(不仅是SubFoos)进行一般查询而且所有SubFoos都必须加载Bar,这不起作用..