实体框架设置导航属性null为零到一个关联

时间:2013-07-28 12:25:35

标签: c# entity-framework c#-4.0

我在两个表之间有一对一的关联。 例如,我有实体Car和实体License,汽车可以有0或1个许可证。
(一辆车可以有一个许可证,但许可证可以有0或1辆车) 当我尝试删除汽车的许可证时,通过设置Car.License = null我得到例外:

来自'Car_Licence'AssociationSet的关系处于'已删除'状态。给定多重约束,相应的“许可证”也必须处于“已删除”状态。

我希望许可证保留在主要许可证DbSet中,并且我希望它保留对Car的引用,我希望将Car的许可证设置为null。

我缺少什么?

1 个答案:

答案 0 :(得分:0)

Car.License设置为null与您设置的关联冲突,其中汽车必须设置一个许可证。您需要更改您的关联,以便汽车可以拥有一个或零个许可证。

修改

如果要使属性为空,则必须将关联的两端设置为零或一。