如何:在填充数据集时关闭约束

 

发布日期: 2016年7月

如果数据集包含约束(如外键约束),则可能导致引发异常,取决于对数据集执行操作的顺序。 例如,在加载相关父记录之前加载子记录可能与约束冲突并导致异常。 在加载子记录后,约束会立即检查相关父记录并引发错误。 如果没有允许临时约束挂起的机制,则在您每次尝试将记录加载到子表中时都会引发错误。 挂起数据集中的所有约束的另一种方法是使用 BeginEditEndEdit 属性。

备注

在约束关闭时,不会引发验证事件(例如,ColumnChangingRowChanging 等)。

以编程方式挂起更新约束

  • 下面的示例演示如何暂时关闭数据集中的约束检查:

                dataSet1.EnforceConstraints = false;
                // Perform some operations on the dataset
                dataSet1.EnforceConstraints = true;
    
            DataSet1.EnforceConstraints = False
            ' Perform some operations on the dataset
            DataSet1.EnforceConstraints = True
    

使用数据集设计器挂起更新约束

  1. 创建和编辑类型化数据集 中打开数据集。 有关详细信息,请参阅如何:在数据集设计器中打开数据集

  2. 在**“属性”**窗口中将 EnforceConstraints 属性设置为 false

请参阅

将数据保存在数据集中
在应用程序中编辑数据
数据演练
在 Visual Studio 中将 Windows 窗体控件绑定到数据
Visual Studio 的数据应用程序概述
连接到 Visual Studio 中的数据
准备应用程序以接收数据
将数据获取到应用程序
在 Visual Studio 中将控件绑定到数据
验证数据
保存数据