Select 来自 DataTable 的 DataColumn 中的唯一值?

Select unique values within a DataColumn from a DataTable?

在 SQL 中获取列中的 DISTINCT 值我会做类似的事情:

SELECT DISTINCT ColumnName FROM TableName;

除了 DataTable 的 DataColumn 之外,我想做类似的事情。我知道这种方式(遵循此 ),它以通常的直观方式使用我们可以检查我们是否包含(whatWeWant)的事实,如果没有,我们可以添加它一些独特物品的容器。我想知道的是是否有类似以下内容的内容:

var uniqueObjects = dataTable.Columns[0].Distinct().ToList();

我还通过阅读 Microsoft Docs 了解到 DataColumn class 没有名为 Distinct 的方法,但如果你们知道类似的事情,请告诉我。如果不是,我将求助于使用 Contains 的直观方式制作 Distinct 扩展方法。

你可以这样做...

      var uniqueObjects =  dataTable.AsEnumerable().Select(x=>x.Field<ColumnType>("ColumnName")).Distinct().ToList();

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

using System.Data;

var uniqueObjects = dataTable
     .AsEnumerable()
     .Select(row => row[0])
     .Distinct()
     .ToList();