LINQ - Group By multiple keys 没有给出预期的结果
LINQ - Group By multiple keys not giving desired results
我正在尝试使用 Linq 按多个键进行分组。
我有一个类别 ID 和一个与之关联的类型 ID,然后是一个与类型 ID 关联的项目列表。
正如您从我的结果中看到的,它们没有被分组。
这是我正在使用的查询:
Dim uploads = items.GroupBy(Function(g) New With {g.CategoryId, g.TypeId}) _
.OrderBy(Function(g) g.Key.CategoryId) _
.ThenBy(Function(g) g.Key.TypeId) _
.Select(Function(g) New UploadListItemViewModel With {
.CategoryId = g.Key.CategoryId,
.TypeId = g.Key.TypeId,
.Uploads = g.ToList()
})
这是结果视图
例如对于 Category 1 / Type 8 ,上传计数应为 3
对于我做错的任何帮助将不胜感激。
组选择器中缺少 Key
关键字。
最终固定码为
Dim uploads = items.GroupBy(Function(x) New With {Key x.CategoryId, Key x.TypeId}) _
.OrderBy(Function(x) x.Key.CategoryId) _
.ThenBy(Function(x) x.Key.TypeId) _
.Select(Function(g) New SKUProductUploadListItemViewModel With {
.CategoryId = g.Key.CategoryId,
.TypeId = g.Key.TypeId,
.Uploads = g.ToList()
})
我正在尝试使用 Linq 按多个键进行分组。
我有一个类别 ID 和一个与之关联的类型 ID,然后是一个与类型 ID 关联的项目列表。
正如您从我的结果中看到的,它们没有被分组。
这是我正在使用的查询:
Dim uploads = items.GroupBy(Function(g) New With {g.CategoryId, g.TypeId}) _
.OrderBy(Function(g) g.Key.CategoryId) _
.ThenBy(Function(g) g.Key.TypeId) _
.Select(Function(g) New UploadListItemViewModel With {
.CategoryId = g.Key.CategoryId,
.TypeId = g.Key.TypeId,
.Uploads = g.ToList()
})
这是结果视图
例如对于 Category 1 / Type 8 ,上传计数应为 3
对于我做错的任何帮助将不胜感激。
组选择器中缺少 Key
关键字。
最终固定码为
Dim uploads = items.GroupBy(Function(x) New With {Key x.CategoryId, Key x.TypeId}) _
.OrderBy(Function(x) x.Key.CategoryId) _
.ThenBy(Function(x) x.Key.TypeId) _
.Select(Function(g) New SKUProductUploadListItemViewModel With {
.CategoryId = g.Key.CategoryId,
.TypeId = g.Key.TypeId,
.Uploads = g.ToList()
})