在 C# 中通过组合框 WPF 为 DataTable 合并设置主键的问题

Issue with setting primary key for DataTable merge, over combobox WPF in C#

组合框被这样填充:

foreach (DataColumn item in Dt_Masterlist.Columns)
{
    Combo_Master_Primary.Items.Add(item.ColumnName);
}

现在我正在尝试从组合框中获取选定的列以将其设置为主键,以便稍后将 2 个数据表相互合并。

DataColumn primarymaster;

//getting the DataColumn[] from Columns with the choosen Columnname by Combobox

foreach (DataColumn item in Dt_Masterlist.Columns)
{
    if (item.ColumnName == Combo_Master_Primary.SelectedItem.ToString())
    {
        primarymaster = item;
        Dt_Masterlist.PrimaryKey = item;
    }
}

Dt_Masterlist.Merge(Dt_NewList);  

我收到以下错误: “类型 System.Data.DataColumn 无法隐式转换为 System.Data.DataColumn[]”

我该如何解决这个问题?

您好 盐TM

想出了一个解决方案,被“新”标签弄糊涂了。

int count = Dt_Masterlist.Columns.Count;
for (int i = 0; i < count; i++)
{
     if (Dt_Masterlist.Columns[i].ColumnName == Combo_Master_Primary.SelectedItem.ToString())
     {
          Dt_Masterlist.PrimaryKey = new DataColumn[] {Dt_Masterlist.Columns[Dt_Masterlist.Columns[i].ColumnName]};
     }

}