根据列表从数据表中查找值

本文关键字:查找 数据表 列表 | 更新日期: 2023-09-27 18:17:40

我有一个列表名称str,其中存储系列名称(如"Series 2", "Series4")等和一个名为dtSeriesDataDataTable,其中存储系列的值。

我想根据str列表中的系列名称从dtSeriesData获取值。

根据列表从数据表中查找值

那么您想要筛选表,以便您只获得这些系列的行?你可以使用LINQ:

var filteredRows = dtSeriesData.AsEnumerable()
    .Where(row => str.Contains(row.Field<string>("ColumnName")));

如果你想要一个新的DataTable,用CopyToDataTable过滤行。

您也可以使用Enumerable.Join,这是更有效的。我在连接时使用查询语法:

var filteredRows = from row in dtSeriesData.AsEnumerable()
                   join name in str
                   on row.Field<string>("ColumnName") equals name
                   select row;