DataSet.EnforceConstraints Propriété
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Obtient ou définit une valeur indiquant si les règles de contrainte doivent être respectées lorsque vous tentez une opération de mise à jour.
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
Valeur de propriété
true
si des règles sont appliquées ; sinon, false
. La valeur par défaut est true
.
- Attributs
Exceptions
Une ou plusieurs contraintes ne peuvent pas être appliquées.
Exemples
L’exemple suivant crée un DataSet avec une table, une colonne, cinq lignes et un UniqueConstraint. La EnforceConstraints propriété est définie sur false
et les valeurs de chaque ligne sont définies sur la même valeur. Lorsque la EnforceConstraints propriété est réinitialisée à true
, un ConstraintException est généré.
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
Remarques
Les contraintes sont définies au DataTable niveau (Constraints propriété ). Pour plus d’informations sur la création de contraintes, consultez Contraintes DataTable.