读书人

请问个 Entity Framework 多对多 删除

发布时间: 2013-10-21 17:02:52 作者: rapoo

请教个 Entity Framework 多对多 删除的问题 如何先删除关系
请问个 Entity Framework 多对多 删除的有关问题 怎么先删除关系

请问个 Entity Framework 多对多 删除的有关问题 怎么先删除关系

A 表中数据
AId Name
a1 a11111
a2 a22222
a3 a33333

B 表中数据
BId Name
b1 b1111
b2 b2222

AINB 表中数据
AID BID
a1 b1
a1 b2
a2 b1
a3 b2




using (Entities entity = new Entities())
{

A a1 = entity.SingleOrDefault(p => p.AId == "a1"); //找到a1 对象

entity.DeleteObject(a1); // 直接这样删除就会报错 那么 AINB 表中数据该怎么先删除???
entity.SaveChanges();

}


[解决办法]
先删除子表,再删除主表
http://www.cnblogs.com/sunnycoder/archive/2010/08/22/1805875.html
[解决办法]
using(Entities entity =new Entities())
{
A a=entity.A.SingleOrDefault(p=>p.AID="a1");
while(a.AInB.Count>0)
{
entity.AInB.Remove(a.AInB.First());
}
entity.A.Remove(a);
entity.SaveChanges();
}
试试看吧,应该是可以的,我做过一次!

读书人网 >.NET

热点推荐