private DataKey GetSrcKey(DataTable src, DataTable dst)
{
if (src._primaryKey != null)
{
return src._primaryKey.Key;
}
DataKey key = default(DataKey);
if (dst._primaryKey != null)
{
DataColumn[] dstColumns = dst._primaryKey.Key.ColumnsReference;
DataColumn[] srcColumns = new DataColumn[dstColumns.Length];
for (int j = 0; j < dstColumns.Length; j++)
{
srcColumns[j] = src.Columns[dstColumns[j].ColumnName];
}
key = new DataKey(srcColumns, false); // DataKey will take ownership of srcColumns
}
return key;
}
}