根据 C#2.0 中的列值过滤 DataTable 行
Posted
技术标签:
【中文标题】根据 C#2.0 中的列值过滤 DataTable 行【英文标题】:Filter DataTable rows based on a column value in C#2.0 【发布时间】:2020-03-06 14:06:49 【问题描述】:我有一个包含 n 行/列的数据表。我想根据只有一个字符值为“*”的列过滤行。我的版本是 C#2.0。如何过滤行并复制到新的数据表中。
此代码无效;
DataTable result = dt.Select("FLAG= '*'");
【问题讨论】:
过滤条件是单元格中只有“*”值的列 实际上无法重现 dotnetfiddle.net/SwIvlk 更新了dotnetfiddle.net/SwIvlk中的代码,现在抛出错误 我没有看到您的更改,您必须按共享按钮才能应用它们。 dotnetfiddle.net/1L1iZA 请在此处找到更新后的代码 【参考方案1】:我通过应用这些步骤完成了这项工作。 CopyToTable 在 C#2.0 中不起作用。
通过根据条件过滤创建一个数据行数组。
string expression;
expression = "FLAG= '*' ";
DataRow[] filteredRows;
// 使用 Select 方法查找与过滤器匹配的所有行。
filteredRows= dt.Select(expression);
然后,从数据行中创建一个新的数据表
foreach (DataRow drow in filteredRows)
dtnew.ImportRow(drow);
【讨论】:
以上是关于根据 C#2.0 中的列值过滤 DataTable 行的主要内容,如果未能解决你的问题,请参考以下文章