如何解决如何在不使用循环的情况下从数据表中过滤空行?
| 我的场景中,数据表可能包含大量行。结果,我无法使用循环来迭代和更新数据表。 我尝试了以下代码, from row in table.AsEnumerable()
where table.Columns.Any(col => !row.IsNull(col))
select row;
但是我找不到Any()的定义。我应该使用任何名称空间来获取Any()吗?
任何机构都请告诉我如何纠正此问题或提出其他替代解决方案。
解决方法
除了必须使用“ 1”命名空间外,还需要使它知道元素类型。
DataTable.Columns
不是通用集合(仅实现IEnumerable
而不是IEnumerable<T>
),并且编译器无法推断类型。您需要执行以下操作:
from row in table.AsEnumerable()
where table.Columns.Cast<DataColumn>.Any(col => !row.IsNull(col))
select row;
, Any()
方法位于System.Linq
命名空间中。该方法属于“ 8”类
, 您应包括以下内容:
using System.Linq;
, 如果框架版本大于2,请使用“ 10”命名空间
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。