Postupy: Ověřování dat během úprav řádků
Ověřování dat je proces kontroly hodnot zadaných do dat aplikací. Je vhodné zkontrolovat tyto hodnoty před odesláním aktualizací k základnímu úložišti dat. Je to proto, že snižuje potenciální počet výměn mezi aplikací a datovým skladem.
Poznámka
Návrhář Dataset vytvoří částečnou třídu, kde do objektu dataset lze přidat logiku ověřování.Datová sada vygenerovaná návrhářem neodstraní ani nezmění žádný kód v dílčí třídě.
Data můžete ověřit při změně hodnot v datovém řádku tak, že zareagujete na událost RowChanging. Při vyvolání tato událost předává argument události (e.Row), který obsahuje hodnoty navrhované pro jednotlivé sloupce v aktuálním řádku. Na základě obsahu každého sloupce v e.Row můžete:
Přijměte navrhovanou hodnotu neprovedením žádné akce.
Odmítnout navrhovanou hodnota nastavením chyby sloupce (SetColumnError) z obslužné rutiny události měnící řádek.
Můžete také použít ovládací prvek ErrorProvider ke zobrazení chybové zprávy pro uživatele. Další informace naleznete v tématu ErrorProvider – komponenta (Windows Forms).
Můžete také provést ověření během změny jednotlivých sloupců pomocí události ColumnChanging. Další informace naleznete v tématu Postupy: Ověřování dat během úprav sloupců.
Ověřování dat v události RowChanging
Můžete napsat kód k ověření, že každý sloupec, který chcete ověřit, obsahuje data, která splňují požadavky aplikace. Pokud navrhovaná hodnota není přijatelná, nastavte sloupec, aby označoval, že obsahuje chybu. Následující příklady nastavují chybu sloupce, když je sloupec Quantity 0 nebo méně. Obslužné rutiny události měnící řádek by měly vypadat jako následující příklad:
Ověření dat při změně řádku (Visual Basic)
Otevřete vaši datovou sadu v Návrháři datové sady. Další informace naleznete v tématu Postupy: Otevření datové sady v Návrháři DataSet.
Poklepejte na záhlaví tabulky, kterou chcete ověřit. Tato akce vytvoří automaticky obslužnou rutinu události RowChanging DataTable v souboru částečné třídy datové sady.
Tip
Dvakrát klikněte na položku vlevo od názvu tabulky a vytvořte obslužnou rutinu události změny řádků.Pokud poklepete na název tabulky, můžete upravit název tabulky.
Private Sub Order_DetailsDataTable_Order_DetailsRowChanging( ByVal sender As System.Object, ByVal e As Order_DetailsRowChangeEvent ) Handles Me.Order_DetailsRowChanging If CType(e.Row.Quantity, Short) <= 0 Then e.Row.SetColumnError("Quantity", "Quantity must be greater than 0") Else e.Row.SetColumnError("Quantity", "") End If End Sub
Ověření dat při změně řádku (C#)
Otevřete vaši datovou sadu v Návrháři datové sady. Další informace naleznete v tématu Postupy: Otevření datové sady v Návrháři DataSet.
Poklepejte na záhlaví tabulky, kterou chcete ověřit. Tato akce vytvoří soubor částečné třídy pro DataTable.
Poznámka
Návrhář Dataset nevytváří automaticky obslužnou rutinu události pro událost RowChanging.Musíte vytvořit metodu ke zpracování události RowChanging a spouštění kódu k připojení události do metody inicializace tabulky.
Do částečné třídy zkopírujte následující kód:
public override void EndInit() { base.EndInit(); Order_DetailsRowChanging += TestRowChangeEvent; } public void TestRowChangeEvent(object sender, Order_DetailsRowChangeEvent e) { if ((short)e.Row.Quantity <= 0) { e.Row.SetColumnError("Quantity", "Quantity must be greater than 0"); } else { e.Row.SetColumnError("Quantity", ""); } }
Viz také
Úkoly
Postupy: Připojování k datům v databázi
Postupy: Ověřování dat během úprav sloupců
Návod: Zobrazování dat ve formuláři Windows
Referenční dokumentace
Události (Průvodce programováním v C#)
Koncepty
Vytváření a úpravy typovaných datových sad