我有这种格式的数据集:
ID Make Model
== ========= =========
1 Ford Fusion
2 Ford Fusion
3 Chevy Malibu
我希望结果是:
Make Model IDs
======== ========= ===
Ford Fusion IEnumerable<int> {1,2}
Chevy Malibu IEnumerable<int> {3}
我正在网格中实现多行编辑,因此我需要保存每行的ID,同时显示要编辑的不同属性。编辑完成后,我将更新ID。
我想知道是否有办法用单个LINQ查询整理这些ID。目前我已经成功但有两个问题。
答案 0 :(得分:3)
一个简单的小组应该工作:
var query=from c in cars
group c.Id by new {c.Make,c.Model} into g
select new {g.Key.Make, g.Key.Model, Ids=g.ToList() };
答案 1 :(得分:3)
您可以尝试这样的事情:
var results = context.Cars
.GroupBy(c => new { c.Make, c.Model })
.Select(g => new
{
Make = g.Key.Make,
Model = g.Key.Model,
IDs = g.Select(c => c.ID)
});