c# - 如何使用过滤器将数据表值存储在另一个数据表中
问题描述
如何使用过滤器将数据表值存储在另一个数据表中。
DataTabe dt = objProfitLossDT.Select("AppBalance <= 0");
解决方案
这是你想要的吗?
DataTable dt = objProfitLossDT.Select("AppBalance <= 0").CopyToDataTable();
请注意,CopyToDataTable
如果源中没有行,则会引发异常。所以你应该检查它:
DataTable dt = objProfitLossDT.Clone(); // Clone is better than assigning null if you need the columns with an empty table
DataRow[] filteredRows = objProfitLossDT.Select("AppBalance <= 0");
if(filteredRows.Length > 0)
dt = objProfitLossDT.Select("AppBalance <= 0").CopyToDataTable();
顺便说一句,你知道你也可以使用 LINQ,它比Select
:
var filteredRows = objProfitLossDT.AsEnumerable()
.Where(row => row.Field<int>("AppBalance) <= 0)
.ToArray(); // if you want a DataRow[]
推荐阅读
- javascript - Antd表,如何按日期排序,包括整个时间戳?
- mysql - Mysql 基于条件的表连接
- java-8 - 在 AWS Lambda 中运行时从资源加载 WSDL 时出错
- python - Django:生产服务器上的表单默认日期不同
- c# - 如何使用 SYSLOG 和 TLS 从 Windows 服务发送日志?
- sql - Postgres:当只有一些行是有效的正则表达式时,选择使用列作为正则表达式
- python - 有几个条件的分组
- java - Azure 中的 Spring Cloud Function 在触发时抛出 IllegalStateException
- javascript - 如何更新第三方道具价值 - Reactjs?
- discord.js - 在 discord.js 中制作欢迎信息