从数据表中的数据列中选择唯一值?

G. *_* LC 4 c# datatable select unique datacolumn

在 SQL 中,要获取列中的DISTINCT值,我会执行以下操作:

SELECT DISTINCT ColumnName FROM TableName;
Run Code Online (Sandbox Code Playgroud)

我想做这样的事情,但对于数据表的数据列。我知道这种方式(点击此链接)使用通常直观的方式来使用这样一个事实:我们可以检查我们所拥有的内容是否包含(whatWeWant),如果不包含,我们可以将其添加到某个容器中独特的物品。我想知道是否存在类似以下内容的内容:

var uniqueObjects = dataTable.Columns[0].Distinct().ToList();
Run Code Online (Sandbox Code Playgroud)

通过阅读Microsoft Docs,我还知道DataColumn 类没有名为 Distinct 的方法,但如果你们知道类似的方法,请告诉我。如果没有,我将采用使用 Contains 的直观方式来创建 Distinct 扩展方法。

小智 6

如果您添加System.Data.DataSetExtensions到项目的引用中:

using System.Data;

var uniqueObjects = dataTable
     .AsEnumerable()
     .Select(row => row[0])
     .Distinct()
     .ToList();
Run Code Online (Sandbox Code Playgroud)