如何从由几列值筛选其他DataTable的一个子集的DataTable? [英] How to get a subset DataTable from another DataTable filtered by few column values?
本文介绍了如何从由几列值筛选其他DataTable的一个子集的DataTable?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我的问题是,我的搜索标准是:
The problem I have is, my search criteria is:
Row["colName"] != "abc" AND
Row["colName"] != "def" AND
Row["colName"] != "ghic" AND
Row["colName"] != "klm" AND
Row["colName"] != "xyz" AND
Row["colName"] != "mnp" etc..
换句话说,我的研究后,我发现了一些关于默认视图
的 DataTable的
和的RowFilter
,但的RowFilter
似乎只有一个值过滤。
in other words, after my research I found something about DefaultView
of the DataTable
and RowFilter
, but Rowfilter
seems to filter only by one value.
我的情况是我需要一堆值进行过滤。
My situation is I need to filter by a bunch of values.
感谢
推荐答案
您可以使用 LINQ到数据表
和值的集合排除。
You could use Linq-To-DataTable
and a collection of values to exclude.
查询语法:
string[] exclude = { "def", "ghic", "klm", "xyz", "mnp" };
var filteredRows = from row in dataTable.AsEnumerable()
where !exclude.Contains(row.Field<string>("colName"))
select row;
DataTable result = filteredRows.CopyToDataTable();
方法语法:
Method Syntax:
result = dataTable.AsEnumerable()
.Where(r => !exclude.Contains(r.Field<string>("colName")))
.CopyToDataTable();
这篇关于如何从由几列值筛选其他DataTable的一个子集的DataTable?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文