在此LINQ查询中多次使用"选择"的目的是什么?

def*_*mer 6 linq vb.net

我遇到了一些像这样的代码:

Dim results = From item In New List(Of Integer) From {1, 2, 3}
              Select item
              Select item
Run Code Online (Sandbox Code Playgroud)

我很惊讶Select item两次是合法的.它似乎与只有一条Select线的行为完全相同.我尝试转换为C#,它会产生编译错误.

有没有理由使用多个选择?这会导致查询行为不同吗?

Seh*_*cht 5

C#等效语法将是:

var results = from item in new List<int> {1, 2, 3}
              select item into item
              select item;
Run Code Online (Sandbox Code Playgroud)

这样你就可以创建一个新的范围来"链接"查询或引用VB.Net文档(参见链接).Select 子句为后续查询子句引入了一组新的范围变量(你可以看到进入C#关键字文档或选择VB.Net子句文档以获取更多信息和示例)