我有一个对象列表,我想更新其中一个对象中的特定成员变量。我了解LINQ专为查询而设计,并不意味着更新不可变数据列表。做到这一点的最佳方法是什么?如果不是最有效的解决方案,则无需使用LINQ。

创建Update扩展方法是否可行?如果是这样,我将如何去做?

EXAMPLE:
(from trade in CrudeBalancedList
 where trade.Date.Month == monthIndex
 select trade).Update(
 trade => trade.Buy += optionQty);

最佳答案

尽管linq并不是要更新不可变数据列表,但它对于获取要更新的项目非常方便。我认为对您来说,这将是:

(from trade in CrudeBalancedList
    where trade.Date.Month == monthIndex
    select trade).ToList().ForEach( trade => trade.Buy += optionQty);

关于c# - 如何使用LINQ和C#使用列表更新元素,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2449449/

10-09 03:10