Linq to sql - 删除并且如果失败则继续

DJP*_*JPB 2 .net continue linq-to-sql

如果我有一个像这样的表:

StudentId  | ... | SchoolId
___________|_____|__________ 
1          | ... | SchoolA
2          | ... | SchoolA
3          | ... | SchoolB
...
Run Code Online (Sandbox Code Playgroud)

我想删除学校列表,从schoolA到schoolZ(使用LINQ-to-SQL):

foreach(School s in schools){
    db.Schools.DeleteOnSubmit(s);
    db.submitChanges();
}
Run Code Online (Sandbox Code Playgroud)

SchoolA并且SchoolB因为上面的FK引用而失败

如何继续删除所有其他学校,丢弃发生例外的学校?

Mar*_*ade 6

只包括没有学生的学校:

var schoolsToDelete = schools.Where(x => !x.Students.Any());
db.Schools.DeleteAllOnSubmit(schoolsToDelete); 
db.submitChanges();
Run Code Online (Sandbox Code Playgroud)