EF做更新操作时,抛出了System.InvalidOperationException:“操作失败

用EF做更新操作时,抛出了System.InvalidOperationException:“操作失败: 无法更改关系,因为一个或多个外键属性不可以为 null。对关系作出更改后,会将相关的外键属性设置为 null 值。如果外键不支持 null 值,则必须定义新的关系,必须向外键属性分配另一个非 null 值,或必须删除无关的对象。”

解决方式有三种:

让EF认为我们这是复合关系,Clear时就删除对应的外键表:就需要将关联的外键同时设置为主键。
仍旧保持聚集关系:将关联的外键字段设置为可空类型。
仍旧保持聚集关系:手动将外表数据删除,将出错代码改为

原文地址:https://www.cnblogs.com/longbky/p/11101898.html