专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > LINQ

请问entity framework 删除一对多关联对象

发布时间:2011-06-24 21:55:18 文章来源:www.iduyao.cn 采编人员:星星草
请教entity framework 删除一对多关联对象
实体定义如下:
 
Dirs
 
Files
 
其中Files中包含外键列DirID指向Dirs的主键DirID
 
需求:删除一条Dir记录,同时删除该Dir所对应的所有Files
 
 
 
代码: 
C# code

using(MyEntities et = new MyEntities()){
    var dir=(此处省略);
    dir.Files.Clear();
    et.Dirs.DeleteObject(dir);
    et.SaveChanges();
}

 

当运行到SaveChanges()的时候,会报一个异常:
 
"其他信息: 操作失败: 无法更改关系,因为一个或多个外键属性不可以为 null。对关系作出更改后,会将相关的外键属性设置为 null 值。如果外键不支持 null 值,则必须定义新的关系,必须向外键属性分配另一个非 null 值,或必须删除无关的对象。"
 
请教解决办法,谢谢


------解决方案--------------------
先查出 Dirs以及Dirs的子集,然后直接删除了Dirs就行,这样的它的子集会一并删除。
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: