Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
EnforceConstraints Property

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.

ExceptionCondition
ConstraintException

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.

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.
    column.Unique=true;
    table.Columns.Add(column);
    dataSet.Tables.Add(table);
    Console.WriteLine("constraints.count: " + 
        table.Constraints.Count);

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

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

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0, 1.1

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

XNA Framework

Supported in: 3.0, 2.0, 1.0
Show:
© 2015 Microsoft