2011-05-18 66 views
1

我在代碼優先的方法使用EF 4.1。 我有一個抽象類:實體框架4.1渴望加載 - 抽象類

public abstract class Base 
{ 
} 

和兩個dereived類:

public Class Derived1 : Base 
{ 
    public Division division{ get; set; } 
} 

public Class Derived2 : Base 
{ 
    public Brand brand{ get; set; } 
} 

最後,我有一個選擇的基類列表的查詢,我要進行預先加載,但我不知道我的派生類是誰:

using (var db = new MyContext()) 
{ 
    var lst = db.Base.Include(WHAT SHOULD I WRITE HERE).ToList(); 
} 

任何想法?

回答

3

必須這樣做:

var lst = db.Base.OfType<Derived1>().Include(d => division) 
      .Union(
       db.Base.OfType<Derived2>().Include(d => d.brand)) 
      .ToList();