比较DataTables并有条件地更新一个

时间:2017-08-16 15:08:34

标签: c# asp.net vb.net linq ado.net

我有两个DataTables - 一个是从csv文件创建的,另一个是从DB表创建的。

enter image description here

  1. 我该怎么办?       根据id和名称比较两个DataTable。
  2. 如果记录存在于:D​​ataTableFromFile而不存在于DataTableFromDB中 - 在DataTableFromDB中插入新记录
  3. 如果记录存在于:D​​ataTableFromDB而不存在于DataTableFromFile中 - 更新DataTableFromDB中的结束日期
  4. 如果两者都有记录:从DataTableFromFile中的值更新DataTableFromDB

  5. 我可以遍历集合,但这太费时了。

  6. 我不想在数据库
  7. 中执行此操作

1 个答案:

答案 0 :(得分:0)

您可以使用

将两个数据表转换为字典
datatable.AsEnumerable()
.ToDictionary<DataRow, string, string>(row => row[0].ToString(),
                                       row => row[1].ToString());

然后您可以执行任何操作。