Ric*_*zak 0 c# linq linq-to-objects
所以我有以下代码:
var itemsGrouped = this.Errors.GroupBy(x => x.UniqueName).AsEnumerable();
var hasErrors = !itemsGrouped.Any((f) =>
{
var errorCount = f.ToArray()
.Where(x => x.ErrorCount.HasValue)
.Count(x => x.ErrorCount.Value > 0);
return errorCount > 2;
});
Run Code Online (Sandbox Code Playgroud)
现在我想检索与.Any()查询匹配的单个项目.我如何只获得匹配的项目?
你不能直接使用Any()函数(它只返回一个bool),但.Where()函数会返回一个IEnumerable<T>也有Any()函数的过滤.
所以类似于:
var itemsGrouped = this.Errors.GroupBy(x => x.UniqueName).AsEnumerable();
var invalidItems = itemsGrouped.Where((f) =>
{
var errorCount = f.ToArray()
.Where(x => x.ErrorCount.HasValue)
.Count(x => x.ErrorCount.Value > 0);
return errorCount > 2;
});
var hasErrors = !invalidItems.Any();
//Do stuff with invalidItems
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
42 次 |
| 最近记录: |