Entity Framework 4.1 eager loading - on abstract classes

房东的猫 提交于 2019-12-05 07:10:13

问题


I'm using EF 4.1 at Code First approach. I have an abstract class:

public abstract class Base
{
}

And two dereived classes:

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

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

At last, I have a query that selects a list of the Base class, and i want to perform eager loading, but i don't know who my derived classes are:

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

Any Ideas?


回答1:


You must do this:

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


来源:https://stackoverflow.com/questions/6042508/entity-framework-4-1-eager-loading-on-abstract-classes

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!