操纵数据表中的值?

时间:2011-03-25 12:47:56

标签: c# datatable

通用数据导入模块:
我正在从6种数据源类型(CSV,Active Directory,SQL,Access,Oracle,Sharepoint)中的任何一种读取数据到数据表中。

然后,用户可以通过转换和每列计算以及写入SQL表(用户选择的任何表)来更改此数据。

这样做很容易,除非用户还必须能够使用目标SQL数据库中的字段(查找)替换数据表中的某些字段

我真的希望在发送到目标数据库之前对数据表执行以上所有操作,但是不能,因为表结构(源和目标都是未知的并且不代表特定的业务对象)重复NOT使用Linq。

tl; dr 我需要对任何数据表进行数据转换。这是一个好方法(No Linq!)

编辑:源表和目标表的结构不同。

1 个答案:

答案 0 :(得分:0)

我最终为每个数据库类型编写了一个类,它是一个接口的所有部分,并使用基于DbConnection的GenericConnection来获取不同类型的源。

我把这个过程分解为:

  1. 导入
  2. 变换
  3. 写入 可以保存并重新打开以供重复使用或编辑的阶段。
  4. 变换部分包括:

    1. 铸造
    2. 计算(字符串,整数,小数,日期,布尔)作为加,减,除,乘,和,或,子串,替换
    3. 查看其他表格
    4. 直接复制
    5. 转换可以排队,以便在写入目标之前,一列数据可以通过任何数量来匹配目标。