gpt4 book ai didi

c# - 数据表上的 LINQ 查找所有行都为空的位置

转载 作者:行者123 更新时间:2023-12-03 00:32:14 24 4
gpt4 key购买 nike

我有一个从 Excel 电子表格中读取数据的代码,我已经到目前为止给出了一些答案

DataTable dt = ds.Tables[0];
dt = dt.AsEnumerable().Where((row, index) => index > 4).CopyToDataTable();
DataTable filteredRows = dt.Rows.Cast<DataRow>().Where(row => row.ItemArray.All(field => !(field is System.DBNull))).CopyToDataTable();

有这个

dt.Rows.Cast<DataRow>().Where(row => row.ItemArray.All(field => (field is System.DBNull)))

返回所有空行。

我也尝试过Any,它没有给出所需的输出

上面的代码适用于所有字段不为 NULL 的情况,即每列都有一个字段。这会排除所有缺少 1 列的行,但这不是我想要的。

我想排除所有列都为空的所有行。

最佳答案

只需将 NOT (!) 移出一层即可。您需要“所有行都不为空”不为真的项目,而不是“所有行不为空”为真的项目。

DataTable filteredRows = dt.Rows.Cast<DataRow>()
.Where(row => !row.ItemArray.All(field => field is System.DBNull))
.CopyToDataTable();

关于c# - 数据表上的 LINQ 查找所有行都为空的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12410990/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com