Udostępnij za pośrednictwem


Wyłączanie ograniczeń podczas wypełniania zestawu danych w aplikacjach .NET Framework

Uwaga

Zestawy danych i powiązane klasy to starsze technologie .NET Framework z początku 2000 roku, które umożliwiają aplikacjom pracę z danymi w pamięci, gdy aplikacje są odłączone od bazy danych. Technologie te są szczególnie przydatne w przypadku aplikacji, które umożliwiają użytkownikom modyfikowanie danych i utrwalanie zmian z powrotem w bazie danych. Mimo że zestawy danych okazały się bardzo udaną technologią, zalecamy, aby nowe aplikacje platformy .NET używały platformy Entity Framework Core. Program Entity Framework zapewnia bardziej naturalny sposób pracy z danymi tabelarycznymi jako modelami obiektów i ma prostszy interfejs programowania.

Jeśli zestaw danych zawiera ograniczenia (takie jak ograniczenia klucza obcego), mogą one zgłaszać błędy związane z kolejnością operacji wykonywanych względem zestawu danych. Na przykład ładowanie rekordów podrzędnych przed załadowaniem powiązanych rekordów nadrzędnych może naruszać ograniczenie i powodować błąd. Po załadowaniu rekordu podrzędnego ograniczenie sprawdza powiązany rekord nadrzędny i zgłasza błąd.

Jeśli nie było mechanizmu zezwalania na tymczasowe zawieszenie ograniczeń, za każdym razem, gdy próbowano załadować rekord do tabeli podrzędnej, zostanie zgłoszony błąd. Innym sposobem wstrzymania wszystkich ograniczeń w zestawie danych jest użycie BeginEditwłaściwości i EndEdit .

Uwaga

Zdarzenia weryfikacji (na przykład ColumnChanging i RowChanging) nie będą zgłaszane po wyłączeniu ograniczeń.

Aby programowo zawiesić ograniczenia aktualizacji

  • W poniższym przykładzie pokazano, jak tymczasowo wyłączyć sprawdzanie ograniczeń w zestawie danych:

    dataSet1.EnforceConstraints = false;
    // Perform some operations on the dataset
    dataSet1.EnforceConstraints = true;
    

Aby wstrzymać ograniczenia aktualizacji przy użyciu projektanta zestawów danych

  1. Otwórz zestaw danych w Projektancie zestawów danych. Aby uzyskać więcej informacji, zobacz Przewodnik: tworzenie zestawu danych w Projektancie zestawów danych.

  2. W oknie Właściwości ustaw EnforceConstraints właściwość na false.