Ověření dat v objektech DataSet
Ověřování dat je proces potvrzení hodnoty do objektů data vyhovují omezení v rámci schématu objektu dataset, jakož i pravidla pro aplikace.Ověření dat před odesláním aktualizace s podkladovou databází je dobré praxe, která snižuje chyby, jakož i potenciální počet přenosy dat mezi aplikací a databází.Můžete potvrdit, že data do objektu dataset je platný ověřovací kontroly vytváření do samotného objektu dataset.Objekt dataset můžete zkontrolovat data bez ohledu na způsob provedení aktualizace – zda přímo ovládacími prvky ve formuláři, v rámci součásti, nebo jiným způsobem.Objekt dataset je součástí aplikace, je logické místo vytvořit ověření specifické pro aplikaci (na rozdíl od budování stejné kontroly do serverové části databáze).
Navrhované umístění přidat ověření do aplikace je soubor částečné třídy je objekt dataset.V Visual Basic nebo Visual C#, Otevřít DataSet Návrhář a poklepejte na sloupec nebo tabulku chcete vytvořit pro ověření.Tato akce vytvoří automaticky ColumnChanging nebo RowChanging obslužnou rutinu události.Další informace naleznete v Jak: ověření dat během změny sloupců, nebo Jak: ověření dat během změn řádku.Kompletní příklad naleznete v Názorný postup: Přidání ověření do objektu Dataset.
Ověření dat
Validace v rámci objektu dataset lze provést:
Vytvořením vlastní ověření specifické pro aplikaci, můžete zkontrolovat data během změny hodnot v jednotlivých datových sloupci.Další informace naleznete v tématu Jak: ověření dat během změny sloupců.
Vytvořením vlastní aplikace ověření dat umožňující kontrolu během změny hodnot během celého datového je změna řádku.Další informace naleznete v tématu Jak: ověření dat během změn řádku.
Vytvoření klíče, jedinečná omezení a podobně jako součást definice skutečné schématu objektu DataSet.Další informace o zahrnutí do definice schématu ověření viz Constraining a DataColumn to Contain Unique Values.
Nastavením DataColumn vlastnosti objektu, jako například MaxLength, AllowDBNull, a Unique.
Existuje několik událostí, které se DataTable objektu při změně dochází v záznamu:
ColumnChanging a ColumnChanged události jsou zaznamenávány během a po každé změně jednotlivé sloupce.ColumnChanging Událostí je užitečné, pokud chcete ověřit změny v určitých sloupců.Informace o navrhované změny je předáno jako argument s událostí.Další informace naleznete v tématu Jak: ověření dat během změny sloupců.
RowChanging a RowChanged události jsou zaznamenávány během a po žádné změny v řádku.RowChanging Událostí je další obecné, jednoduše označuje někde dochází ke změně v řádku; Nevíte, který sloupec byl změněn.Další informace naleznete v tématu Jak: ověření dat během změn řádku.
Standardně každé změny ve sloupci proto vyvolává čtyři události: první ColumnChanging a ColumnChanged události pro určitý sloupec změnám a pak RowChanging a RowChanged událostí.Pokud více změn jsou prováděny na řádek, bude pro každou změnu zvýšit události.
[!POZNÁMKA]
Řádek dat BeginEdit metoda vypne RowChanging a RowChanged události po každé změně jednotlivé sloupce.V takovém případě není aktivována událost až EndEdit byla volána metoda, kdy RowChanging a RowChanged události jsou zaznamenávány pouze jednou.Další informace naleznete v tématu Jak: vypnutí omezení při vyplňování objektu Dataset.
Událostí, které zvolíte, závisí na jak granulovaných chcete ověření se.Je důležité zachytit chybu ihned při změně sloupce, sestavit pomocí ověření ColumnChanging událostí.Jinak použijte RowChanging událostí, které by mohlo vést k zachycení najednou několik chyb.Navíc pokud dat je strukturován tak, že hodnota jednoho sloupce je porovnávána podle obsahu jiného sloupce, pak by měl provádět své ověření během RowChanging událostí.
Při aktualizaci záznamů, DataTable objektu vyvolává události, které může reagovat na změny se vyskytují a po provedení změn.
Pokud aplikace používá zadaný objekt dataset, můžete vytvořit silnými obslužné rutiny.Budou přidány čtyři další zadané události, které můžete vytvořit obsluhy dataTableNameRowChanging, dataTableNameRowChanged, dataTableNameRowDeleting, and dataTableNameRowDeleted.Tyto obslužné rutiny událostí zadaný předat argument, který obsahuje názvy sloupců tabulky, které vytvořit kód, které usnadňuje zápis a čtení.
Události aktualizace dat
Událost |
Description |
---|---|
Hodnota ve sloupci je měněn.Událost předává řádků a sloupců můžete s navrhované nové hodnoty. |
|
Hodnota ve sloupci byla změněna.Událost předává řádků a sloupců můžete s navrhovanou hodnotu. |
|
Změny provedené DataRow objektu mají být potvrzena zpět do objektu dataset.Pokud nebyla volána BeginEdit metodou, RowChanging událost je aktivována pro každou změnu sloupce, ihned po ColumnChanging událost byla aktivována.Pokud volání BeginEdit před provedením změn, RowChanging událost je aktivována pouze při volání EndEdit metoda. Událost předává řádek můžete a hodnotu určující typ akce (Změna, vložit a podobně) probíhá. |
|
Řádek byl změněn.Událost předává řádek můžete a hodnotu určující typ akce (Změna, vložit a podobně) probíhá. |
|
Probíhá odstranění řádku.Událost předává řádek můžete a hodnotu určující typ akce (odstranění) probíhá. |
|
Řádek byl odstraněn.Událost předává řádek můžete a hodnotu určující typ akce (odstranění) probíhá. |
ColumnChanging, RowChanging, A RowDeleting události jsou zaznamenávány během procesu aktualizace.Tyto události můžete použít k ověření dat nebo provést jiné typy zpracování.Protože během těchto událostí jsou v procesu aktualizace, můžete zrušit aktualizaci došlo k výjimce, která zabraňuje dokončení změny.
ColumnChanged, RowChanged, A RowDeleted události jsou oznámení událostí, vyvolané aktualizace byla úspěšně dokončena.Tyto události jsou užitečné, když chcete přijmout další akce v závislosti na úspěšné aktualizace.
Viz také
Úkoly
Jak: připojení k datům v databázi
Jak: ověření dat v ovládacím prvku DataGridView model Windows Forms