VB.net中的Lambda表达式?

8
在C#中,我只需这样做:
myIEnumerable.Where(i=>i.ReturnsABool()).any();

我该如何在VB.net中实现这个功能?我卡在了如何构建lambda表达式上。


2
我知道这不是问题的重点,但你可以使用带有谓词的Any重载来简化这个表达式:myIEnumerable.Any(i => i.ReturnAsBool())。 - Rafa Castaneda
这确实不是问题,我只是在寻找一种表达 lambda 的方式,但我仍然没有意识到有一个重载。谢谢。 - Boris Callens
1个回答

13

试一下这个

myIEnumerable.Where(Function (i) i.ReturnsABool()).Any()

我明白了。要冗长得多。我开始明白为什么我收到的VB代码不太喜欢Lambda :S - Boris Callens
我也不是很喜欢 VB 语法中 lambda 的写法,但这并不应该阻止任何人使用它们,因为它们非常有用。 - Meta-Knight
直到最近,我认为Lambda表达式不受支持,因为许多工具都说它们不支持,但我确信它们是支持的,只是最近才看到了如何在VB中使用这些语法。它们非常有用,可以用于内联事件处理等。 - RoguePlanetoid

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接