c# - vb.net和c#的GroupBy区别

标签 c# vb.net linq

我学习了一个 linq 教程,其中的代码是用 c# 编写的,并尝试将代码片段翻译成 vb.net。以下是在 c# 下工作:

var employeeGroups = from employee  in Employee.GetAllEmployees()
                     group employee by employee.Deptartment;

我可以把它翻译成扩展方法

Dim group1 = Employee.GetAllEmployees.GroupBy(Function(x) x.Department)

哪个工作正常但是

Dim group = From emp In Employee.GetAllEmployees
            Group emp By emp.Department

给我一个编译错误'into expected'。我找不到任何关于它的信息,但我必须在 vb 中使用“INTO”而不是在 c# 中,这对吗?如果是这样,我必须如何调整我的查询以适应 C# 等价物?

最佳答案

VB.Net 有不同的组语法。试试这个..

From emp In Employee.GetAllEmployees
         Group By Department= emp.Department Into g = Group
         Select g

或者干脆

From emp In Employee.GetAllEmployees
             Group By Department= emp.Department Into Group

关于c# - vb.net和c#的GroupBy区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25688029/

相关文章:

c# - Azure 通知中心随机不传送到 IOS

c# - Java解密返回的某些 block 有错误

c# - 打破递归循环来检查条件,这可能吗?

vb.net - Automapper:如何忽略 EF 中的导航属性 (VB.NET)

vb.net - Debug.WriteLine 不工作

c# - 什么是NullReferenceException,如何解决?

c# - 在 Linq 中比较和分配元素

c# - 数据集的目的是什么?

linq - 如何拦截 IQueryProvider 查询的结果(单个结果除外)

C# Linq - 使用条件值排序并返回分组结果