DataSet.EnforceConstraints Proprietà
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Ottiene o imposta un valore che indica se vengono seguite le regole sui vincoli quando si esegue un'operazione di aggiornamento.
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
Valore della proprietà
true
se le regole vengono applicate; in caso contrario, false
. Il valore predefinito è true
.
- Attributi
Eccezioni
Non è possibile attivare uno o più vincoli.
Esempio
Nell'esempio seguente viene creato un DataSet oggetto con una tabella, una colonna, cinque righe e una UniqueConstraint. La EnforceConstraints proprietà è impostata su false
e i valori di ogni riga vengono impostati sullo stesso valore. Quando la EnforceConstraints proprietà viene reimpostata su true
, viene generato un oggetto ConstraintException .
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
Commenti
I vincoli vengono impostati a DataTable livello (Constraints proprietà ). Per altre informazioni sulla creazione di vincoli, vedere Vincoli DataTable.