我有一个对象列表,看起来像这样:
+-------+------+
| Group | Item |
+-------+------+
| A | A-1 |
| A | A-2 |
| B | B-3 |
| B | B-4 |
| A | A-5 |
| A | A-6 |
| B | B-7 |
+-------+------+
在保持订单的同时,有没有办法用LINQ对这些项目进行分组。上表将产生4组。 AA, BB, AA, B
。使用GroupBy函数,我最终只能使用两个组AAAA, BBB
。
一些示例代码:
@foreach (var group in Model.AllItems.GroupBy(g => g.Group))
{
<h1>Group</h1>
foreach (var groupItem in group)
{
<h2>@groupItem.Item</h2>
}
}
上面表格的代码输出为
注意,我已更改表格以更好地说明我的问题
我想要的输出是