当我尝试在数据集中合并表时,发生此异常:-(无法启用约束。一行或多行包含违反非空、唯一或外键约束的值。)
代码:
MyDataset.Tables[0].Merge(dt, false, MissingSchemaAction.Add);
当我尝试在数据集中合并表时,发生此异常:-(无法启用约束。一行或多行包含违反非空、唯一或外键约束的值。)
代码:
MyDataset.Tables[0].Merge(dt, false, MissingSchemaAction.Add);
我查看了 Murat Yıldız 评论中的问题,但没有一个答案适用于我的设置。Merge
我的代码在该方法上也失败了。在我的案例中起作用的是这个片段,取自这里: http: //www.codeproject.com/Tips/405938/Debugging-DataSet-Constraint-Errors
try
{
dataSet.Merge(anotherDataSet);
}
catch (ConstraintException)
{
foreach (DataTable table in dataSet.Tables)
{
DataRow[] rowErrors = table.GetErrors();
System.Diagnostics.Debug.WriteLine(table.TableName + " Errors:" + rowErrors.Length);
for (int i = 0; i < rowErrors.Length; i++)
{
System.Diagnostics.Debug.WriteLine(rowErrors[i].RowError);
foreach (DataColumn col in rowErrors[i].GetColumnsInError())
{
System.Diagnostics.Debug.WriteLine(col.ColumnName + ":" + rowErrors[i].GetColumnError(col));
}
}
}
}