Iterate with LINQ over a list and set founded varible
本问题已经有最佳答案,请猛点这里访问。
我有这段代码,并且希望对LINQ语句执行同样的操作。
1 2 3 4 5 6 7 | foreach (var field in fieldExtension) { if (field.Name.Equals(item.Name)) { field.Access = true; } } |
在列表中迭代很容易:
1 | fieldExtension.Where(field => field.Name.Equals(item.Name)); |
但是,是否可以为我们在列表中找到的变量赋值?我想到了这样的事情:
1 | fieldExtension.Where(field => field.Name.Equals(item.Name)).Select(field => field.Access = true); |
有人知道如何正确使用Linq吗?因为我不想分开。这也行。
1 2 | var result = fieldExtension.Where(field => field.Name.Equals(item.Name)).ToList(); result.FirstOrDefault().Access = true; |
你为什么坚持要林肯?一直使用LINQ不是一个好习惯。
你怎么能把Linq和ForEach混合起来呢?
1 2 3 4 | foreach (var field in fieldExtension.Where(f => f.Name.Equals(item.Name))) { field.Access = true; } |