是否可以在Entity Framework中急切加载具有继承的属性?

时间:2014-08-31 10:33:49

标签: c# .net entity-framework

我有以下课程:

public class Box
{
    public int Id { get; set; }
    public DbSet<Item> Items { get; set; }
}

public abstract class Item
{
    public int Id { get; set; }
}

public class Toy : Item
{
    public string Name { get; set; }
}

public class ElectricToy
    : Toy
{
    public int Voltage { get; set; }
}

public class WoodenToy
    : Toy
{
    public string Color { get; set; }
}

A Box有一系列可能是电动玩具或木制玩具的物品。现在,我想用以下代码在一个盒子中加载所有玩具。

var boxes = 
    db.Boxes
        .Where(o => o.Id = id)
        .Include(o => o.Items);

它加载所有玩具,但它不会加载电动和木制玩具值,即电压始终为0,颜色始终为空。

如何强制Entity Framework加载ElectricToy和WoodenToy的值?

0 个答案:

没有答案