DataSet.EnforceConstraints Właściwość

Definicja

Pobiera lub ustawia wartość wskazującą, czy reguły ograniczeń są przestrzegane podczas próby wykonania dowolnej operacji aktualizacji.

C#
public bool EnforceConstraints { get; set; }
C#
[System.Data.DataSysDescription("DataSetEnforceConstraintsDescr")]
public bool EnforceConstraints { get; set; }

Wartość właściwości

true jeśli reguły są wymuszane; w przeciwnym razie , false. Wartość domyślna to true.

Atrybuty

Wyjątki

Nie można wymusić co najmniej jednego ograniczenia.

Przykłady

Poniższy przykład tworzy tabelę z jedną tabelą DataSet , jedną kolumną, pięcioma wierszami i jedną UniqueConstraint. Właściwość jest ustawiona EnforceConstraints na false wartość , a wartości każdego wiersza są ustawione na tę samą wartość. Gdy EnforceConstraints właściwość zostanie zresetowana do trueelementu , ConstraintException zostanie wygenerowana wartość .

C#
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());
    }
}

Uwagi

Ograniczenia są ustawiane na DataTable poziomie (Constraints właściwość). Aby uzyskać więcej informacji na temat tworzenia ograniczeń, zobacz Ograniczenia tabeli danych.

Dotyczy

Produkt Wersje
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

Zobacz też