c# - 使用 LINQ 更新集合中的所有对象

标签 c# .net linq foreach

有没有办法使用 LINQ 执行以下操作?

foreach (var c in collection)
{
    c.PropertyToSet = value;
}

澄清一下,我想遍历集合中的每个对象,然后更新每个对象的属性。

我的用例是我对一篇博文有一堆评论,我想遍历博文中的每条评论并将博文的日期时间设置为 +10 小时。我可以在 SQL 中完成,但我想将其保留在业务层中。

最佳答案

虽然您可以使用 ForEach 扩展方法,但如果您只想使用框架,您可以这样做

collection.Select(c => {c.PropertyToSet = value; return c;}).ToList();

由于惰性求值,需要 ToList 以便立即求值选择。

关于c# - 使用 LINQ 更新集合中的所有对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/398871/

相关文章:

c# - 如何使用 LINQ 使用不同的分隔符将字符串拆分两次?

c# - 在 LINQ 中求和

c# - 使用 OR 语法在多个列上连接一个表

c# - 以编程方式重命名计算机

c# - 查找字符串中的第一个字母字符

c# - .NET Core .csproj 输出路径无法正常工作

c# - 如何通过代码生成WPF控件

c# - 串口未授权访问异常

c# - ASP.NET MVC 应用程序在 Ajax 请求上使用 Kendo Chart 和大数据源?

c# - 如何防止用户从多个位置或同一台电脑上的不同浏览器登录