ForeignKeyConstraint.AcceptRejectRule
Property
Definition
Indicates the action that should take place across this constraint when AcceptChanges() is invoked.
public virtual System.Data.AcceptRejectRule AcceptRejectRule { get; set; }
Property Value
One of the AcceptRejectRule values. Possible values include None, and Cascade. The default is None.
Examples
The following example creates a ForeignKeyConstraint, sets its AcceptRejectRule, and adds the constraint to a DataTable object's ConstraintCollection.
' The next line goes into the Declarations section of the module:
' SuppliersProducts is a class derived from DataSet.
Private suppliersProducts As SuppliersProducts
Private Sub CreateConstraint()
' Declare parent column and child column variables.
Dim parentColumn As DataColumn
Dim childColumn As DataColumn
Dim fkConstraint As ForeignKeyConstraint
' Set parent and child column variables.
parentColumn = suppliersProducts.Tables("Suppliers").Columns("SupplierID")
childColumn = suppliersProducts.Tables("Products").Columns("SupplieriD")
fkConstraint = New ForeignKeyConstraint( _
"SuppierFKConstraint", parentColumn, childColumn)
' Set null values when a value is deleted.
fkConstraint.DeleteRule = Rule.SetNull
fkConstraint.UpdateRule = Rule.Cascade
fkConstraint.AcceptRejectRule = AcceptRejectRule.Cascade
' Add the constraint, and set EnforceConstraints to true.
suppliersProducts.Tables("Suppliers").Constraints.Add(fkConstraint)
suppliersProducts.EnforceConstraints = True
End Sub
Remarks
Changes to a DataRow or DataTable are not final until the AcceptChanges method is invoked. At that point, the AcceptRejectRule determines the course of action on any values that have been changed or deleted.