允许用户将源数据中的列与数据库中的列匹配的最佳方法是什么?

时间:2016-12-15 15:42:22

标签: vb.net csv data-binding import datatable

我正在使用各种来源的源CSV文件,无法控制列的名称。

我想为用户提供数据库中的列列表,并允许他们选择应该使用源文件中的哪些列来填充它们。

我的第一个想法是为一组列生成标签列表,并在每个标签旁边放置一个组合框,其中包含另一组列的列表,但这样可以让我多次选择列,感觉就像是代码中有很多重复。

    For Each col In ImportTable.Columns
        Dim l As New Label
        l.Name = "l" + col.columnname
        l.Text = col.columnname
        llabels.Add(l)
        Dim c As New ComboBox
        c.Width = 250
        c.Name = col.columnname
        Dim newlist As New List(Of String)
        newlist.Add("-IGNORE-")
        For Each pcol In AppDataSet.Patients.Columns
            If pcol.ToString = "IdColumn" Then Continue For
            newlist.Add(pcol.ToString)
        Next
        c.DataSource = newlist
        lcombos.Add(c)
    Next

    For i = 0 To llabels.Count - 1
        llabels(i).Location = New Point(20, 40 + i * 30)
        Me.Controls.Add(llabels(i))
        lcombos(i).Location = New Point(150, 40 + i * 30)
        Me.Controls.Add(lcombos(i))
    Next

我怎样才能更好地做到这一点,另外在考虑数据导入并告诉它将哪些值放在哪里以及处理不同数据类型时我应该记住什么?当我将源从源导入我的数据库时?我正在使用绑定到SQLExpress数据库的DataSet。

0 个答案:

没有答案