“如何表达VB.NET”;聚合为;在C#中?

“如何表达VB.NET”;聚合为;在C#中?,c#,vb.net,linq,C#,Vb.net,Linq,我在VB.NET中有一个代码: Aggregate item In items Into Sum(item.Value) 有人能帮我把它转换成C吗 我想 您可以始终使用转换代码,但现在它总是可靠的 items.Aggregate((sum, item) => sum += item.Value); 这与: items.Sum(item => item.Value); 无需汇总。这可以通过以下方式在C#中轻松完成: var total = items.Sum(item =>

我在VB.NET中有一个代码:

Aggregate item In items Into Sum(item.Value)
有人能帮我把它转换成C吗

我想

您可以始终使用转换代码,但现在它总是可靠的

items.Aggregate((sum, item) => sum += item.Value);
这与:

items.Sum(item => item.Value);
无需汇总。

这可以通过以下方式在C#中轻松完成:

var total = items.Sum(item => item.Value);

无论是谁投票决定关闭,我不认为一行少于50个字符的代码“太本地化”…看起来像是一种将一组值添加在一起的奇特方式。我只想对集合使用迭代器,但我可能弄错了。@ginman为什么要使用迭代器?哪种方式更好?有一件事,它将是三行而不是一行。我的评论更多的是为了争论,而不是一个真正的答案。如果他已经到了发问的地步,我很高兴他得到了一个准确的答案。但是,在进行代码转换时,我认为限定您正在做的事情可能会有好处,而不仅仅是寻找语法上的等价物。Np,有用但并不总是可靠。JRL:实际上,这是一种想法process@JRL:“吸血鬼”?这对我来说是一个新的挑战。这是什么意思?@brian:我的意思是他们都编辑了答案,将Reed的答案包括在内one@JRL:嗯……我还是很困惑。根据编辑历史记录,Kev在17:33:42时进场(答案正确),VVS在17:34:38时进场(答案正确),Reed在17:35:05时进场。我没有看到任何证据表明他们剽窃了任何东西。您是否在屏幕上看到了一些不同的内容?@Brian:编辑历史记录在最初几分钟内不会显示编辑内容(这是StackExchange最近的一次更改…)。使用“总和”的答案都是在我通过编辑提交后大约一分钟添加的。。。这并不重要,但这正是JRL所指的。。。
var total = items.Sum(item => item.Value);