Sdílet prostřednictvím


Vypnutí omezení při vyplňování datové sady v aplikacích .NET Framework

Poznámka:

Datové sady a související třídy jsou staršími technologiemi rozhraní .NET Framework z počátku 2000, které aplikacím umožňují pracovat s daty v paměti, zatímco aplikace jsou odpojené od databáze. Jsou zvláště užitečné pro aplikace, které uživatelům umožňují upravovat data a uchovávat změny zpět do databáze. I když se datové sady ukázaly jako velmi úspěšná technologie, doporučujeme, aby nové aplikace .NET používaly Entity Framework Core. Entity Framework poskytuje přirozenější způsob práce s tabulkovými daty jako objektovými modely a má jednodušší programovací rozhraní.

Pokud datová sada obsahuje omezení (například omezení cizího klíče), můžou vyvolat chyby související s pořadím operací prováděných s datovou sadou. Například načtení podřízených záznamů před načtením souvisejících nadřazených záznamů může narušit omezení a způsobit chybu. Jakmile načtete podřízený záznam, omezení zkontroluje související nadřazený záznam a vyvolá chybu.

Pokud neexistuje žádný mechanismus umožňující dočasné pozastavení omezení, při každém pokusu o načtení záznamu do podřízené tabulky se vyvolá chyba. Další způsob, jak pozastavit všechna omezení v datové sadě, je s hodnotou a EndEdit vlastnostmiBeginEdit.

Poznámka:

Události ověřování (například ColumnChanging a RowChanging) nebudou vyvolány při vypnutí omezení.

Pozastavení omezení aktualizací prostřednictvím kódu programu

  • Následující příklad ukazuje, jak dočasně vypnout kontrolu omezení v datové sadě:

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

Pozastavení omezení aktualizací pomocí Návrháře datových sad

  1. Otevřete datovou sadu v Návrháři datových sad. Další informace naleznete v tématu Návod: Vytvoření datové sady v Návrháři datových sad.

  2. V okně Vlastnosti nastavte EnforceConstraints vlastnost na falsehodnotu .