EF继承失败

时间:2015-02-18 16:26:44

标签: c# entity-framework

Class Diagram

http://i.stack.imgur.com/oqCwa.png

我有这个EF模型。 Service被声明为抽象类,Claim和Assistance继承自该类。但是,设计者抱怨没有映射Service.ServiceId:"从第205行开始映射片段的问题:必须为EntitySet服务的所有关键属性(Service.IdService)指定映射。"

如何解决这个问题?

3 个答案:

答案 0 :(得分:0)

援助和索赔中的

ServiceId必须是关键。尝试从您的数据库更新您的EDMX。

答案 1 :(得分:0)

您从Assistance派生ClaimService似乎有点奇怪,但也有一对多的关系。

如果ClaimAssistanceService共享属性,但还需要与Service建立一对多的关系,我建议您Service不抽象,并为它们创建一个单独的基类来继承自

答案 2 :(得分:0)

好的,只是为了记录它是否可以帮助别人,我在本教程中找到了答案:

https://msdn.microsoft.com/en-us/data/jj618293.aspx

关键是从模型中删除基表和派生表之间的关系,从模型中的派生类中删除PK并设置继承。