更新时间:2023-02-02 20:48:14
一个简单的解决方案可能就是在任何移除时调整行数和索引。
试试这个:
An easy solution may be to just adjust your row count and index on any removal.
Try this:
int rowcount = datatabletest.Rows.Count;
for (int i = 0; i < rowcount; i++)
{
if (datatabletest.Rows[i]["Mcolumn1"].ToString().Trim() == "" || dtExport.Rows[i]["column2"].ToString().Trim() == "")
{
datatabletest.Rows.Remove(datatabletest.Rows[i]);
rowcount--;
i--;
}
}
您好,
查看以下代码,您可以使用对DataTable的LINQ查询 [ ^ ]。
Hi,
Review below code, where you can get result using LINQ query on a DataTable[^].
DataTable datatabletest = new DataTable();
DataTable dtNewTableTest = new DataTable();
var vDataTable = from vRow in datatabletest.AsEnumerable()
where vRow.Field<string>("Column1") != "" || vRow.Field<string>("Column2") != ""
select vRow;
dtNewTableTest = vDataTable.CopyToDataTable();
AsEnumerable()
返回的IEnumerable<&的DataRow GT;
。如果您需要将 IEnumerable< DataRow>
转换为 DataTable
,请使用 CopyToDataTable()
extension。
AsEnumerable()
returns IEnumerable<DataRow>
. If you need to convert IEnumerable<DataRow>
to a DataTable
, use the CopyToDataTable()
extension.
您好,
您可以从选择查询本身中删除列。我认为这会更好。请试试。
Hi,
You can remove the columns from the selection query itself. That will be better I think. Please try it.