Sdílet prostřednictvím


Aktualizace dat pomocí tableAdapter 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. Tyto technologie 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í.

Po úpravě a ověření dat v datové sadě můžete aktualizovaná data odeslat zpět do databáze voláním Update metody TableAdapter. Metoda Update aktualizuje jednu tabulku dat a spustí správný příkaz (INSERT, UPDATEnebo DELETE) na RowState základě každého řádku dat v tabulce. Pokud datová sada obsahuje související tabulky, Visual Studio vygeneruje třídu TableAdapterManager, kterou používáte k aktualizaci. TableAdapterManager třída zajišťuje, že aktualizace jsou provedeny ve správném pořadí na základě omezení cizího klíče, která jsou definována v databázi. Při použití ovládacích prvků vázaných na data vytvoří architektura vazby dat členovou proměnnou třídy TableAdapterManager s názvem tableAdapterManager.

Poznámka:

Když se pokusíte aktualizovat zdroj dat obsahem datové sady, můžou se zobrazit chyby. Abyste se vyhnuli chybám, doporučujeme vložit kód, který volá metodu adaptéru Update try/catch do bloku.

Přesný postup aktualizace zdroje dat se může lišit v závislosti na obchodních potřebách, ale zahrnuje následující kroky:

  1. Volání metody adaptéru Update try/catch v bloku

  2. Pokud je zachycena výjimka, vyhledejte řádek dat, který způsobil chybu.

  3. Sloučit problém v datovém řádku (programově, pokud můžete, nebo zobrazením neplatného řádku uživateli pro úpravy) a potom aktualizaci opakujte (HasErrors, GetErrors).

Uložení dat do databáze

Update Volání metody TableAdapter. Předejte název tabulky dat, která obsahuje hodnoty, které se mají zapsat do databáze.

Aktualizace databáze pomocí metody TableAdapter

  • Uzavřete metodu TableAdapter Update do try/catch bloku. Následující příklad ukazuje, jak aktualizovat obsah Customers tabulky NorthwindDataSet z try/catch bloku.

    try
    {
        this.Validate();
        this.customersBindingSource.EndEdit();
        this.customersTableAdapter.Update(this.northwindDataSet.Customers);
        MessageBox.Show("Update successful");
    }
    catch (System.Exception ex)
    {
        MessageBox.Show("Update failed");
    }