Postupy: přidávání ověření do tříd entit
Publikováno: srpen 2016
Validating tříd entit je proces ověření, že hodnoty zadané do datové objekty v souladu s omezeními ve schématu objektu a také pravidel stanovených pro aplikaci. Ověřování dat před odeslání aktualizací do databáze je vhodné, která snižuje chyby. Také se tím snižuje potenciální počet zpátečních cest mezi aplikací a databáze.
Technologie LINQ to SQL nástroje v sadě Visual Studio Poskytuje částečné metody, které uživatelům umožňují rozšířit návrhářem generovaný kód, který je spuštěn při vložení, aktualizace a odstraní dokončení entit a také během a po provedení změn jednotlivé sloupce.
Poznámka
Toto téma obsahuje základní kroky pro přidání ověření tříd entit pomocí O/R Designer. Vzhledem k tomu může být obtížné postupujte podle následujících kroků obecný bez ohledu na konkrétní entity třídu, má byly poskytnuty návod, který používá skutečná data.
Přidání ověřování pro změny s hodnotou v konkrétní sloupec
Tento postup ukazuje, jak ověřit data při změně hodnoty ve sloupci. Protože ověření se provede uvnitř definice třídy (nikoli v uživatelském rozhraní) je vyvolána výjimka, pokud hodnota způsobí selhání ověření. Implementace zpracování chyb pro kód v aplikaci, která se pokouší změnit hodnoty sloupců.
Poznámka
Váš počítač může v následujících pokynech zobrazovat odlišné názvy nebo umístění některých prvků uživatelského rozhraní sady Visual Studio. Tyto prvky jsou určeny edicí sady Visual Studio a použitým nastavením. Další informace najdete v tématu Přizpůsobení integrovaného vývojového prostředí.
Ověření dat při změně hodnoty sloupce
Otevřete nebo vytvořte nové technologie LINQ to SQL Classes souboru (.dbml souboru) v O/R Designer. (Dvakrát klikněte .dbml souboru v Průzkumníku řešení.)
V Návrháři relací objektů klikněte pravým tlačítkem na třídy, pro který chcete přidat ověřování a potom klikněte na tlačítko Zobrazit kód.
Otevře se Editor kódu s částečnou třídu pro třídu vybrané entity.
Umístěte kurzor v částečné třídy.
Pro projekty jazyka Visual Basic:
Rozbalte název metody seznamu.
Vyhledejte na*%{COLUMNNAME/*Změna metoda pro sloupec, který chcete přidat ověřování k.
On
%{COLUMNNAME/Changing
Metoda je přidán do částečné třídy.Přidejte následující kód do nejprve ověřte, zda byla zadána hodnota, a pak zajistit, aby hodnota zadaná pro sloupec je přijatelné pro vaši aplikaci.
value
Argument obsahuje navržená hodnota, takže přidejte logiku k potvrzení, že se jedná o platnou hodnotu:If value.HasValue Then ' Add code to ensure that the value is acceptable. ' If value < 1 Then ' Throw New Exception("Invalid data!") ' End If End If
Pro projekty jazyka C#:
Vzhledem k tomu, že projekty jazyka C# negenerují automaticky obslužné rutiny událostí, můžete vytvořit sloupec změna částečné metody technologie IntelliSense.
Typ
partial
a poté místo pro přístup k seznamu dostupných částečné metody. Klepněte na metodu Změna sloupce pro sloupec, který chcete přidat ověřování. Následující kód se podobá kód, který je generována, když vyberete sloupec změna částečnou metodu:partial void OnCOLUMNNAMEChanging(COLUMNDATATYPE value) { throw new System.NotImplementedException(); }
Přidání ověření aktualizací do třídy Entity
Kromě kontrole hodnoty během změny, můžete také ověřit data při pokusu o aktualizaci třídy úplnou entitu. Ověření během pokusu o aktualizaci umožňuje porovnat hodnoty do více sloupců, pokud to vyžadují obchodní pravidla. Následující postup ukazuje, jak ověřit při pokusu o aktualizaci třídy úplnou entitu.
Poznámka
Kód ověřování pro aktualizace dokončete tříd entit se spustí v částečnou DataContext třídy (namísto částečné třídy pro konkrétní entity třídy).
Chcete-li ověřit data při aktualizaci na třídu entity
Otevřete nebo vytvořte nové technologie LINQ to SQL Classes souboru (.dbml souboru) v O/R Designer. (Dvakrát klikněte .dbml souboru v Průzkumníku řešení.)
Klikněte pravým tlačítkem myši na prázdnou oblast na Návrhář relací objektů a klikněte na tlačítko Zobrazit kód.
Otevře se Editor kódu s částečnou třídu pro
DataContext
.Částečné třídy pro umístěte kurzor
DataContext
.Pro projekty jazyka Visual Basic:
Rozbalte název metody seznamu.
Klikněte na tlačítko aktualizaceENTITYCLASSNAME.
Update
ENTITYCLASSNAME metoda je přidán do částečné třídy.Hodnotám jednotlivé sloupce pomocí
instance
argument, jak je znázorněno v následujícím kódu:If (instance.COLUMNNAME = x) And (instance.COLUMNNAME = y) Then Dim ErrorMessage As String = "Invalid data!" Throw New Exception(ErrorMessage) End If
Pro projekty jazyka C#:
Vzhledem k tomu, že projekty jazyka C# negenerují automaticky obslužné rutiny událostí, technologie IntelliSense můžete vytvořit částečnou
Update
CLASSNAME metoda.Typ
partial
a poté místo pro přístup k seznamu dostupných částečné metody. Klepněte na metodu aktualizace pro třídu, kterou chcete přidat ověřování. Kód, který je generován při výběru připomíná následující kódUpdate
CLASSNAME částečnou metodu:partial void UpdateCLASSNAME(CLASSNAME instance) { if ((instance.COLUMNNAME == x) && (instance.COLUMNNAME = y)) { string ErrorMessage = "Invalid data!"; throw new System.Exception(ErrorMessage); } }
Viz také
Technologie LINQ to SQL nástroje v sadě Visual Studio
LINQ to SQL
Ověřování dat