小编典典

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

all

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

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

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

我的用例是我对博客文章有一堆评论,我想遍历博客文章的每条评论,并将博客文章的日期时间设置为 +10 小时。我可以在 SQL
中做到这一点,但我想将它保留在业务层中。


阅读 92

收藏
2022-03-07

共1个答案

小编典典

虽然您可以使用ForEach扩展方法,但如果您只想使用可以执行的框架

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

由于 惰性评估ToList,需要立即评估选择。 __

2022-03-07