EF 更新记录发现外键更改但更新又跳回以前值

记录一下出错的问题:在EF更新记录时,更新的记录存在外键并同时有外键对象的值时,怎么更新外键值也不改变,反复测试才发现这一点的。

解决办法:就是在更新前把存在外键对应的对象设置为null

比如:User 有id,name,depid,dep四个字段,其中dep保存用户单位信息的对象,depid是单位dep的主键。

在更新时这四个属性都含有值时,如修改的是depid,则更新不成功。

解决办法:在update前把dep=null;

 

posted @ 2021-07-06 19:57  lunawzh  阅读(130)  评论(0编辑  收藏  举报