我有ThirdParty实体和两个派生实体:供应商和客户。
我叫工人另一个实体,与供应商的一员:在实体框架中使用派生类而不是抽象类型
没有定义EntitySets:
public abstract class ThirdParty { } public class Supplier : ThirdParty { } public class Customer : ThirdParty { } public class Worker { public virtual string Name {get;set;} public virtual Supplier Supplier {get;set;} }
当我使用实体框架,我得到以下异常从数据库中获取工作者对于指定的实体类型“CompanyData.Supplier”。如果'CompanyData.Supplier'是派生类型,则改为使用基类型。
该错误告诉我为供应商成员使用ThirdParty类型而不是供应商类型。但我希望供应商与供应商类型而不是ThirdParty。我怎样才能解决这个问题?
这种模式是不EF的问题。你究竟在做什么查询? “*当我从数据库中获得Worker时* ...”不是特别精确。 – Slauma
@尼尔芬维克:我不知道。 SpeedBirdNine的答案足够好。 – Naor