比如一个新闻模块 我要删除整个模块 那么相关的新闻也要删除 在linq下怎么做 ? 是不是只有用for循环?
var q = from c in db.NewsType
where c.NewsType_Id == id
select c;
var w = from c in db.News
where c.News_TypeId == id
select c;
if (q.Count() > 0)
{
for (int e = 0; e < w.Count(); e++)
{
db.News.DeleteOnSubmit(w.First());
db.SubmitChanges();
}
db.NewsType.DeleteOnSubmit(q.First());
db.SubmitChanges();
return true;
}
else
{
return false;
}
linq asp
------解决方案--------------------------------------------------------
可以的
循环里的db.SubmitChanges();可以去掉吧
在外面一次提交
------解决方案--------------------------------------------------------
不要把db.SubmitChanges();放到for里面,外面一次性提交就行
------解决方案--------------------------------------------------------
主从表在删除时,先删除从表,再删除主表