C# 不带主键列的数据表合并

C# 不带主键列的数据表合并,c#,merge,datatable,C#,Merge,Datatable,如何合并目标表包含主键列而源表不包含主键列的表。如果DataSet enforceConstraints设置为false,则它将合并该表。但在目标表上执行GetChanges()时发生异常 //Dest table contains primary key which is missing in source table DataSet ds; DataTable source; ds.EnforceConstraints = false;

如何合并目标表包含主键列而源表不包含主键列的表。如果DataSet enforceConstraints设置为false,则它将合并该表。但在目标表上执行GetChanges()时发生异常

//Dest table contains primary key which is missing in source table

        DataSet ds;
        DataTable source;
        ds.EnforceConstraints = false;
        ds.Tables["Dest"].Merge(source,true,MissingSchemaAction.AddWithKey);
        ds.Tables["Dest"].GetChanges();

已尝试合并没有主键的表。
我认为这是不可能的。

尝试合并没有主键的表。
我认为这是不可能的。

最简单的解决方案:向源代码中添加主键。引用Joe Celko的话:如果它没有主键,那就不是一个表最简单的解决方案:向源代码中添加主键。引用Joe Celko的话:如果没有主键,它就不是表