我想知道当我想删除我的客户时如何删除所有的bankCheck。
这是我的数据库
我做了这样的事情:
ConEntities context = new ConEntities();
context.Customer.Attach(selectedCustomer);
context.Customer.Remove(selectedCustomer);
context.SaveChanges();
context.Dispose();
但我有这个错误:
无法删除或更新父行:外键约束失败 (``。{。
BankCheck
,CONSTRAINTfk_1
外键(idCustomer
) 参考Customer
(id
))“
我将Cascade放在我的OnDelete End1
上答案 0 :(得分:0)
已修复this:
using (var context = new ConEntities())
{
var parent = context.Customer.Include(p => p.Check).SingleOrDefault(s => s.id == selectedCustomer.id);
if (parent.Check != null && parent.Check.Count > 0)
{
foreach (var child in parent.Check.ToList())
{
context.Check.Remove(child);
}
}
context.Customer.Attach(parent);
context.Customer.Remove(parent);
context.SaveChanges();
}