gpt4 book ai didi

c# - 快速从数据表中删除在另一个数据表中找不到的行

转载 作者:太空宇宙 更新时间:2023-11-03 16:11:07 26 4
gpt4 key购买 nike

这里我有两个数据表 dtPartMaster([Part Number Exported]) 和 dtPartBackUp([Part Number Backup],[weight])现在我想删除 dtPartBackUp 中的行,其中 [part Number Backup] 在 dtPartMaster([Part Number Exported]) 中不存在我的逻辑是这样的,但是处理 billon 记录需要很长时间

 button1_click()
{ int count = 0;
//line remove for clearity

foreach (DataRow dr in dtPartBackUp.Rows)
{
if (!CheckPartNumber(dr["Part Number Backup"].ToString(), dtPartMaster))
{
dtPartBackUp.Rows[count].Delete();
}

count++;
}

dtPartBackUp.AcceptChanges();// to accept changes

}

private bool CheckPartNumber(string PartNumber, DataTable dt)
{
bool flag = false;
DataRow dr = dt.Select("[Part Number Exported] Like '" + PartNumber + "'").FirstOrDefault();
if (dr != null)
flag = true;

dr = null;
return flag;

}

提前致谢阿姆里特

最佳答案

试试这个(未测试),

这应该根据 id 列返回 dt1 和 dt2 中的行列表(我正在考虑你的 id 和 id2 列是字符串类型)

var rows = (from r1 in dt1.AsEnumerable()
join r2 in dt2.AsEnumerable() on r1.Field<string>("id") equals r2.Field<string>("id2")
select r1).ToList();

关于c# - 快速从数据表中删除在另一个数据表中找不到的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17418873/

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