我有一个名为allEventsDetails和集合属性的IEnumerable集合 是数字,名称和状态。
如果两个或更多Digits值相等,我需要更新相同的集合。
var categories = from p in allEventsDetails
group p by p.Digit into g
where g.Count() > 1
select g.Select(s => s.status = "true");
如何使用linq执行此操作?
答案 0 :(得分:0)
(from x in allEventsDetails
group x by x.Digit into y
where y.Count()>1
select y).SelectMany(z=>z).ToList().ForEach(x=>x.Status="true");
你还可以做的是:
var temp= (from x in allEventsDetails
group x by x.Digit into y
where y.Count()>1
select y).SelectMany(z=>z);
foreach (var x in temp)
{
x.Status= "test";
}
这样你就不必创造一个临时的"名单。