Sdílet prostřednictvím


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

  1. 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í.)

  2. 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.

  3. Umístěte kurzor v částečné třídy.

  4. Pro projekty jazyka Visual Basic:

    1. Rozbalte název metody seznamu.

    2. Vyhledejte na*%{COLUMNNAME/*Změna metoda pro sloupec, který chcete přidat ověřování k.

    3. On %{COLUMNNAME/ Changing Metoda je přidán do částečné třídy.

    4. 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#:

    1. 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

  1. 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í.)

  2. 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.

  3. Částečné třídy pro umístěte kurzor DataContext.

  4. Pro projekty jazyka Visual Basic:

    1. Rozbalte název metody seznamu.

    2. Klikněte na tlačítko aktualizaceENTITYCLASSNAME.

    3. Update ENTITYCLASSNAME metoda je přidán do částečné třídy.

    4. 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#:

    1. Vzhledem k tomu, že projekty jazyka C# negenerují automaticky obslužné rutiny událostí, technologie IntelliSense můžete vytvořit částečnou UpdateCLASSNAME metoda.

    2. 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ód UpdateCLASSNAME čá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