两个datatble,合成筛选成另一个新的datatable

 

第一种方式是用循环去匹配,可能效率比较慢

//for (int i = 0; i < Nic.Rows.Count; i++)
//{
// for (int j = 0; j < dt.Rows.Count; j++)
// {

//表一的ProductCode 不等于表二的ProductCode就跳出循环
// if (Nic.Rows[i]["ProductCode"].ToString().Trim() != dt.Rows[j]["ProductCode"].ToString().Trim())
// {
// n++;
// if (n == m)
// {
// DataRow row = enddt.NewRow();
// row.ItemArray = Nic.Rows[i].ItemArray;
// enddt.Rows.Add(row);
// n = 0;
// }
// }
// else
// {
// n = 0;
// break;
// }
// }
//}

 

 

第二种方式是使用 datatable里自带的select查询来做

for (int i = 0; i < Nic.Rows.Count; i++)
{
DataRow[] rows = dt.Select("ProductCode='"+Nic.Rows[i]["ProductCode"].ToString()+"'");
if (rows.Count()==0)
{
DataRow rows1 = enddt.NewRow();
rows1.ItemArray = Nic.Rows[i].ItemArray;
enddt.Rows.Add(rows1);
}
else
{
continue;
}
}

posted @ 2016-06-15 14:52  Jesh_95  阅读(752)  评论(0编辑  收藏  举报