过滤数据表以包含唯一列

时间:2013-06-12 04:25:24

标签: c# linq datatable

我有一个数据表如下

ID(INT NOT NULL AND PK)    Name(NOT NULL NVARCHAR)
1                          Apple
2                          Apple
3                          Apple
4                          Orange
5                          Apple
6                          Orange

我需要过滤数据表,使其仅包含唯一的名称。 ID可以是表

中选择的任何一行

必需的数据表

ID(INT NOT NULL AND PK)    Name(NOT NULL NVARCHAR)
1/2/3/5(any one)           Apple
4/6(any one)               Orange

1 个答案:

答案 0 :(得分:6)

您可以使用GroupBy方法使用LINQ to DataTable:

var result = dt.AsEmumerable()
               .GroupBy(row => row.Field<string>("Name"))
               .Select(g => g.First())
               .CopyToDataTable();