如何在不使用循环的情况下从数据表中过滤空行?

问题描述

| 我的场景中,数据表可能包含大量行。结果,我无法使用循环来迭代和更新数据表。 我尝试了以下代码,
          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”命名空间     

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...