DataSet.EnforceConstraints Свойство

Определение

Возвращает или задает значение, определяющее соблюдение правил ограничения при попытке совершения операции обновления.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); };
[System.Data.DataSysDescription("DataSetEnforceConstraintsDescr")]
public bool EnforceConstraints { get; set; }
member this.EnforceConstraints : bool with get, set
Public Property EnforceConstraints As Boolean

Значение свойства

trueзначение, если правила применяются. в противном случае —. falsetrue if rules are enforced; otherwise, false. Значение по умолчанию — true.The default is true.

Атрибуты

Исключения

Невозможно наложить одно или несколько ограничений.One or more constraints cannot be enforced.

Примеры

В следующем примере создается DataSet таблица с одной таблицей, одним столбцом, пятью строками и одним. UniqueConstraintThe following example creates a DataSet with one table, one column, five rows, and one UniqueConstraint. EnforceConstraints Свойство имеетfalse значение, а значения каждой строки задаются одинаковым значением.The EnforceConstraints property is set to false and the values of each row are set to the same value. Когда свойство сбрасывается на true, ConstraintException создается. EnforceConstraintsWhen 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

Комментарии

Ограничения задаются на DataTable уровне (Constraints свойство).Constraints are set at the DataTable level (Constraints property). Дополнительные сведения о создании ограничений см. в разделе ограничения DataTable.For more information about creating constraints, see DataTable Constraints.

Применяется к

Дополнительно