在 C# 中对矩阵进行分组

问题描述 投票:0回答:2

我有一个 3 列 x 行的矩阵(或者我们可以称之为数据表)。 我应该根据column1 和column2 的值创建组。 (如果不同行的column1和column2的值相同,那么这些行必须在同一组中)。 我怎样才能在 C# 中做到这一点?


c# grouping
2个回答
0
投票

如果我理解正确的话,你有一个

DataTable

DataTable table = new DataTable();

并且您想要查询它;你可以在 Linq 的帮助下做到这一点,如下所示:

var result = table
  .Rows
  .OfType<DataRow>()
  .GroupBy(row => (row[0], row[1]), row => row[2]);

这里我们按第

0
和第
1
列进行分组,同时在分组中使用
2
nd 列。


0
投票

谢谢,使用 Linq 我可以解决,还有一件事是如何删除最后一个元素后面的最后一个逗号(或者我如何知道创建了多少个组):

字符串注释 =“MOC-QS/BS 已释放批次:”;

foreach(组中的var实体)

comment += entity.BatchID + ",";
© www.soinside.com 2019 - 2024. All rights reserved.