我有两个带有外键约束的表我怎样才能从一个事务中的两个表中删除行? LINQ to SQL似乎以错误的顺序调用我的删除。有没有我可以检查的地方,并确保约束被linq to SQL正确识别?使用linq to sql从多个表中删除时的外键约束问题
DataContext.OtherImages.DeleteOnSubmit(myOtherImage);
DataContext.Images.DeleteOnSubmit(myImage);
DataContext.SubmitChanges();
外键约束在OtherImages上。谢谢!
”SQL似乎以错误的顺序调用我的删除。 “ - 你确定吗? http://stackoverflow.com/questions/2509842/linq-to-sql-delete-some-related-records –
正确的,它应该,但为什么外键约束错误?如果它按照我所做的顺序做了,那么应该没有问题,对吧? – Mike
它可能不是你的问题的答案,但你可以创建外键,这样当'Images'表中的行被删除时,它会自动删除'OtherImages'表中的那些用于引用键的对象。从这里查看'ON DELETE CASCADE' http://msdn.microsoft.com/en-us/library/aa933119(SQL.80).aspx –