我对Entity Framework有一些问题:我有一个带有两个派生类的基类。另一方面,我有一个包含三个List的类,每个List包含一个提到的类:
public class Base {
public int id { get; set; }
public Datetime date { get; set; }
}
public class Derived1: Base{
}
public class Derived2: Base{
}
public class Container {
public int id { get; set; }
public List<Base> base { get; set; }
public List<Derived1> derived1 { get; set; }
public List<Derived2> derived2 { get; set; }
}
我想要的是Base Derived1和Derived2对Container使用相同的外键。在Container中我希望List of Base聚合他的List of Derived1和Derived2。但我无法弄清楚如何做到这一点。通常,所有来自base的派生类都将使用相同的外键,但每次尝试此代码时,Entity框架都会为每个类创建一个外键。这里不是什么大不了的事,但是Base,Derived1和Derived2应该与其他两个类共享相同的外键,如果它拒绝使用相同的外键,那么它实际上是非常复杂的(我将有9列而不是3)。