DataSet.EnforceConstraints Property

 
System_CAPS_noteNote

The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

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 Property EnforceConstraints As Boolean

Property Value

Type: System.Boolean

true if rules are enforced; otherwise false. The default is true.

Exception Condition
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 Sub DemonstrateEnforceConstraints()
    ' Create a DataSet with one table, one column and 
    ' a UniqueConstraint.
    Dim dataSet As DataSet = New DataSet("dataSet")
    Dim table As DataTable = New DataTable("table")
    Dim column As DataColumn = New DataColumn("col1")
    column.Unique = True
    table.Columns.Add(column)
    dataSet.Tables.Add(table)
    Console.WriteLine("constraints.count: " _
        & table.Constraints.Count)

    ' add five rows.
    Dim row As DataRow
    Dim i As Integer
    For i = 0 To 4
       row = table.NewRow()
       row("col1") = i
       table.Rows.Add(row)
    Next
    table.AcceptChanges()

    dataSet.EnforceConstraints = False
    ' Change the values of all rows to 1.
    Dim thisRow As DataRow
    For Each thisRow In table.rows
       thisRow("col1") = 1
    Next

    Try
        dataSet.EnforceConstraints = True
    Catch e As System.Data.ConstraintException
	    ' Process exception and return.
        Console.WriteLine("Exception of type {0} occurred.", _
            e.GetType().ToString())
    End Try
End Sub

.NET Framework
Available since 1.1
Return to top
Show: