我有一个数据表格,看起来像下面这样。
我有一个包含动态列名的
我想从这个表格中生成一个
但是,如果列名的
结果将会是7个数据表,每个数据表都包含一行。
另一个例子是,如果列名的
如何使用LINQ实现这个功能,查询将基于包含在列表中的列名动态生成,您能指导我吗?
我已经使用了DataTable.Select和Select distinct以及嵌套循环的动态字符串来完成它,但它看起来很复杂,我想知道是否有更有效的方法来实现这个功能。
ID Country Supplier
515 DE A
515 CH A
515 FR A
516 DE B
516 FR B
517 DE C
517 IT C
我有一个包含动态列名的
List<string>
,例如如果该列表只包含一个列:Supplier
我想从这个表格中生成一个
List<DataTable>
或者一个 DataSet,根据列表中的列名将表格分离。在这种情况下,我只按 Supplier
列进行分离,结果将会是三个如下所示的 DataTables。 ----------table 1--------
515 DE A
515 CH A
515 FR A
----------table 2--------
516 DE B
516 FR B
----------table 3--------
517 DE C
517 IT C
但是,如果列名的
List<string>
包含了以下内容:Supplier
Country
结果将会是7个数据表,每个数据表都包含一行。
----------table 1--------
515 DE A
----------table 2--------
515 CH A
----------table 3--------
515 FR A
----------table 4--------
516 DE B
----------table 5--------
516 FR B
----------table 6--------
517 DE C
----------table 7--------
517 IT C
另一个例子是,如果列名的
List<string>
只包含 Country
列,则结果将为:----------table 1--------
515 DE A
516 DE B
517 DE C
----------table 2--------
515 CH A
----------table 3--------
515 FR A
516 FR B
----------table 4--------
517 IT C
如何使用LINQ实现这个功能,查询将基于包含在列表中的列名动态生成,您能指导我吗?
我已经使用了DataTable.Select和Select distinct以及嵌套循环的动态字符串来完成它,但它看起来很复杂,我想知道是否有更有效的方法来实现这个功能。