DataSet.EnforceConstraints Property
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Gets or sets a value indicating whether constraint rules are followed when attempting any update operation.
public:
property bool EnforceConstraints { bool get(); void set(bool value); };
public bool EnforceConstraints { get; set; }
[System.Data.DataSysDescription("DataSetEnforceConstraintsDescr")]
public bool EnforceConstraints { get; set; }
member this.EnforceConstraints : bool with get, set
[<System.Data.DataSysDescription("DataSetEnforceConstraintsDescr")>]
member this.EnforceConstraints : bool with get, set
Public Property EnforceConstraints As Boolean
Property Value
true
if rules are enforced; otherwise, false
. The default is true
.
- Attributes
Exceptions
One or more constraints cannot be enforced.
Examples
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());
}
}
Private Sub DemonstrateEnforceConstraints()
' Create a DataSet with one table, one column and
' a UniqueConstraint.
Dim dataSet As New DataSet("dataSet")
Dim table As New DataTable("table")
Dim column As 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
Remarks
Constraints are set at the DataTable level (Constraints property). For more information about creating constraints, see DataTable Constraints.