This documentation is archived and is not being maintained.

DataSet.EnforceConstraints Property

Gets or sets a value indicating whether constraint rules are followed when attempting any update operation.

Namespace:  System.Data
Assembly:  System.Data (in System.Data.dll)

public bool EnforceConstraints { get; set; }

Property Value

Type: System.Boolean
true if rules are enforced; otherwise false. The default is true.


One or more constraints cannot be enforced.

Constraints are set at the DataTable level (Constraints property). For more information about creating constraints, see DataTable Constraints (ADO.NET).

The following example creates a DataSet with one table, one column, five rows, and one UniqueConstraint. The EnforceConstraints property is set to false and the values of each row are set to the same value. When the EnforceConstraints property is reset to true, a ConstraintException is generated.

private void DemonstrateEnforceConstraints()
    // Create a DataSet with one table, one column and  
    // a UniqueConstraint.
    DataSet dataSet= new DataSet("dataSet");
    DataTable table = new DataTable("table");
    DataColumn column = new DataColumn("col1");

    // A UniqueConstraint is added when the Unique  
    // property is true.
    Console.WriteLine("constraints.count: " + 

    // add five rows.
    DataRow row ;
    for(int i=0;i<5;i++)
        row = table.NewRow();
        row["col1"] = i;

    // Change the values of all rows to 1. 
    foreach(DataRow thisRow in table.Rows)
        //Console.WriteLine("\table" + thisRow[0]);
    catch(System.Data.ConstraintException e)
        // Process exception and return.
        Console.WriteLine("Exception of type {0} occurred.", 

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile for Smartphone, Windows Mobile for Pocket PC, Xbox 360, Zune

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0, 1.1, 1.0

.NET Compact Framework

Supported in: 3.5, 2.0, 1.0

XNA Framework

Supported in: 3.0, 2.0, 1.0