【发布时间】:2011-09-05 06:08:18
【问题描述】:
我有一个 POCO 类型的 IEnumerable,包含大约 80,000 行 和一个 db 表 (L2E/EF4),其中包含存在“错误/差异”的行子集(大约 5000 行,但经常重复以提供大约 150 个不同的条目)
以下代码获取不同的 VSACode 的“错误”,然后尝试更新完整的结果集,只更新匹配的行...但它不起作用!
var vsaCodes = (from g in db.GLDIFFLs
select g.VSACode)
.Distinct();
foreach (var code in vsaCodes)
{
var hasDifference = results.Where(r => r.VSACode == code);
foreach (var diff in hasDifference)
diff.Difference = true;
}
var i = results.Count(r => r.Difference == true);
在这段代码之后,i = 0
我也试过了:
foreach (var code in vsaCodes)
{
results.Where(r => r.VSACode == code).Select(r => { r.Difference = true; return r; }).ToList();
}
如何更新“结果”以仅设置匹配的差异属性?
【问题讨论】:
标签: c# linq ienumerable