Entity Framework一对多关系或一对一关系删除子对象的方法

常见问题:无法更改关系,因为一个或多个外键属性不可以为 null。对关系作出更改后,会将相关的外键属性设置为 null 值。如果外键不支持 null 值,则必须定义新的关系,必须向外键属性分配另一个非 null 值,或必须删除无关的对象。

解决方法:

例如OrderItem和Product是一对多的关系

OrderItem.ProductId是关系的外键

你要先删除对product的引用,比如表OrderItem里有一个到Product.Id的外键的话,需要将其设为空值对应。所以在删除之前要将OrderItem.ProductId设置为0或null

posted @ 2012-02-23 10:01  ido  阅读(4589)  评论(4编辑  收藏  举报