为什么VB有比LIN#更多的LINQ关键字?

时间:2009-06-24 17:20:44

标签: c# vb.net linq

为什么VB有比C#更多的LINQ关键字?

4 个答案:

答案 0 :(得分:15)

如果我没记错的话,通过查询语法只能使用VB.Net而不是C#的4个关键字

VB.Net添加了这些关键字,因为我们觉得它对我们的用户很有价值。我们设想查询语法是VB.net用户使用LINQ的主要方式,并希望通过语法尽可能多地启用场景。

我不知道为什么C#把它们排除在外。我的猜测是他们认为情景不合理,特别是考虑到该功能仍可通过扩展方法获得。

编辑添加了Aggregate和其他一些人(感谢Dario和Chris!)

答案 1 :(得分:3)

VB团队决定创建比C#团队更多的语言扩展(就转换为标准查询运算符的关键字而言)。我将其归功于具有不同设计目标的不同团队。

幸运的是,这两种语言都可以完全访问所有可用的标准查询运算符,因此不会丢失任何功能。

答案 2 :(得分:0)

检查您是否有菜单

Tools > Options > Text Editor > C# -> Statment Completation -> Hide advanced members 

取消选中,如果这是检查意味着您有隐藏的成员。这是由VS团队创建的,用于帮助并简化新手的任务。

答案 3 :(得分:0)

一个关键字是对LINQ的半“LINQ”d,而C#具有VB不具有的yield