如何:在填充数据集时关闭约束
如果数据集包含约束(如外键约束),则可能导致引发异常,取决于对数据集执行操作的顺序。 例如,在加载相关父记录之前加载子记录可能与约束冲突并导致异常。 在加载子记录后,约束会立即检查相关父记录并引发错误。 如果没有允许临时约束挂起的机制,则在您每次尝试将记录加载到子表中时都会引发错误。 挂起数据集中的所有约束的另一种方法是使用 BeginEdit 和 EndEdit 属性。
备注
在约束关闭时,不会引发验证事件(例如,ColumnChanging、RowChanging 等)。
下面的示例演示如何暂时关闭数据集中的约束检查:
DataSet1.EnforceConstraints = False ' Perform some operations on the dataset DataSet1.EnforceConstraints = True
dataSet1.EnforceConstraints = false; // Perform some operations on the dataset dataSet1.EnforceConstraints = true;
使用数据集设计器挂起更新约束
在 创建和编辑类型化数据集 中打开数据集。 有关更多信息,请参见如何:在数据集设计器中打开数据集。
在**“属性”**窗口中将 EnforceConstraints 属性设置为 false。
请参见
概念
Visual Studio 2012 中针对数据应用程序开发的新增功能
在 Visual Studio 中将 Windows 窗体控件绑定到数据