MVC一对多关系 删除表头,我想做一个判断,是否有表体

zhengyingcan 2017-01-10 03:38:40
删除表头,我想做一个判断,是否有子件,
假如某条记录有子记录,就出一个报错原因

string IQIPQCapmService.Delete(IEnumerable<int> ids)
{
using (var scope = _dbContextScopeFactory.Create())
{
var db = scope.DbContexts.Get<JuCheapContext>();
var dbSet = db.Set<QIPQCapmEntity>();
var entities = dbSet.Where(item => ids.Contains(item.ID));
entities.ForEach(item => item.QIPQCapmsons.Count()>0);
//entities.ForEach(item => item.IsDeleted = true);
entities.ForEach(item => dbSet.Remove(item));
return scope.SaveChanges() > 0 ? "删除成功":"删除不成功";
}
}
怎么改呢, 这个拉姆达表达式有培训的地方吗,我太弱了
...全文
234 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhengyingcan 2017-01-12
  • 打赏
  • 举报
回复
引用 1 楼 hanjun0612 的回复:
只能给你一个例子。
int b=0;
            List<string> a = new List<string>();
            a.ForEach(x =>
            {
                //语句块
                if (1 == 1)
                    b = 2;
            });
改成如下 using (var scope = _dbContextScopeFactory.Create()) { var db = scope.DbContexts.Get<JuCheapContext>(); var dbSet = db.Set<QIPQCapmEntity>(); var QIPQCapmlist = dbSet.Where(x => ids.Contains(x.ID) && x.QIPQCapmsons.Any()); string strErr = ""; foreach (var Qipqc in QIPQCapmlist) { strErr += Qipqc.TE002+ " </br> "; } if (strErr.Length>0) { return strErr+"请删除子集后再删除"; } else { var entities = dbSet.Where(item => ids.Contains(item.ID)); entities.ForEach(item => dbSet.Remove(item)); return scope.SaveChanges() > 0 ? "删除成功" : "删除不成功"; } } 感觉拉姆达表达式不适合foreach
闭包客 2017-01-11
  • 打赏
  • 举报
回复
lambda 实际上是一个匿名委托来的。
() => {}
等价于:
delegate () {}
可能你看到大多数 lambda 表达式只有一句,不知道它是可以写多句的。 如果 lambda 里面有多句,像楼上那样用花括号括起来就行了。
正怒月神 版主 2017-01-10
  • 打赏
  • 举报
回复
只能给你一个例子。
int b=0;
            List<string> a = new List<string>();
            a.ForEach(x =>
            {
                //语句块
                if (1 == 1)
                    b = 2;
            });

62,067

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧