Sdílet prostřednictvím


Walkthrough: Creating LINQ to SQL Classes by Using Single-Table Inheritance (O/R Designer)

 

Publikováno: duben 2016

Technologie LINQ to SQL nástroje v sadě Visual Studio Podporuje dědičnosti jedné tabulky, jak je obvykle implementována v relační systémy. Rozšiřuje obecné kroků uvedených v tomto návodu Postupy: Konfigurace dědičnosti pomocí Návrháře relací objektů tématu a poskytuje některé reálná data k prokázání použití dědičnosti v O/R Designer.

Během tohoto návodu bude provádět následující úlohy:

  • Vytvořit tabulku databáze a přidat data.

  • Vytvoření aplikace Windows Forms.

  • Přidat Technologie LINQ to SQL souboru do projektu.

  • Vytvořte nové třídy entity.

  • Nakonfigurujte tříd entit použít dědičnosti.

  • Dotaz na zděděné třídě.

  • Zobrazení dat ve formuláři Windows.

Vytvořit tabulku dědit z

Pokud chcete zobrazit, jak pracuje dědičnost, vytvořit tabulku malé osoba, použít jako základní třídu a poté vytvořit objekt zaměstnance, který dědí z něj.

Chcete-li vytvořit základní tabulky k předvedení dědičnosti

  1. V Server Explorer/Průzkumník databáze, klikněte pravým tlačítkem myši tabulky uzel a klikněte na tlačítko Přidat novou tabulku.

    Poznámka

    Můžete použít databázi Northwind nebo jakékoli jiné databáze, který lze přidat tabulku.

  2. V Návrháři tabulky přidáte do tabulky následující sloupce:

    Název sloupce Datový typ Povolit hodnoty Null
    ID int False
    Typ int True
    Jméno nvarchar(200) False
    Příjmení nvarchar(200) False
    Správce int True
  3. Sloupec ID nastavte jako primární klíč.

  4. Uložte tabulku a pojmenujte jej osoba.

Přidání dat do tabulky

Aby mohli ověřit, že je správně nakonfigurován dědičnosti, musí v tabulce některá data pro každou třídu v jedné tabulky dědičnosti.

Chcete-li přidat data do tabulky

  1. Otevřete v zobrazení dat v tabulce. (Klikněte pravým tlačítkem myši osoba tabulky v Průzkumníku serveru/Průzkumník databáze a klikněte na tlačítko Zobrazit Data tabulky.)

  2. Zkopírujte následující data do tabulky. (Můžete jej zkopírujte a vložte jej do tabulky tak, že vyberete celý řádek v podokně výsledků.)

    ID Typ Jméno Příjmení Správce
    1 1 Dana Wallace NULL
    2 1 Roman Grilo NULL
    3 1 Yael Peled NULL
    4 2 Gatis Ozolins 1
    5 2 Andreas Hauser 1
    6 2 Tiffany Phuvasate 1
    7 2 Alexey Orekhov 2
    8 2 Michał Poliszkiewicz 2
    9 2 Tai 2
    10 2 Fabricio Noriega 3
    11 2 Robert Martin 3
    12 2 Ken Kwok 3

Vytvoření nového projektu

Teď, když jste vytvořili v tabulce, vytvoření nového projektu k předvedení konfigurace dědičnosti.

Chcete-li vytvořit nové aplikace systému Windows

  1. Z souboru nabídky, vytvořte nový projekt.

  2. Název projektu InheritanceWalkthrough.

    Poznámka

    O/R Designer Je podporována v projektech Visual Basic a C#. Vytvoření nového projektu v jednom z těchto jazyků.

  3. Klikněte na tlačítko aplikace Windows Forms šablonu a potom klikněte na tlačítko OK. Další informace naleznete v tématu Klientské aplikace.

  4. Je vytvořen a přidán do projektu InheritanceWalkthrough Průzkumníku řešení.

Přidat LINQ to SQL třídy souboru do projektu

Chcete-li přidat LINQ to SQL souboru do projektu

  1. Na projektu nabídce klikněte na tlačítko Přidat novou položku.

  2. Klikněte na tlačítko třídy LINQ to SQL šablonu a potom klikněte na tlačítko Přidat.

    Soubor DBML je přidán do projektu a O/R Designer otevře.

Vytvořit vztah dědičnosti pomocí Návrhář relací objektů

Konfigurace dědičnosti přetažením dědičnosti objektu z nástrojů na návrhovou plochu.

Chcete-li vytvořit vztah dědičnosti

  1. V Průzkumníku serveru/Průzkumník databáze, přejděte osoba tabulku, kterou jste vytvořili dříve.

  2. Přetáhněte osoba do tabulky O/R Designer návrhovou plochu.

  3. Přetáhněte druhý osoba tabulky na O/R Designer a změňte jeho název na zaměstnance.

  4. Odstranit Manager vlastnost z osoba objektu.

  5. Odstranit typu, ID, FirstName, a LastName z vlastnosti zaměstnance objektu. (Jinými slovy, odstraňte všechny vlastnosti s výjimkou Manager.)

  6. Z Návrhář relací objektů kartě nástrojů, vytvořit dědičnosti mezi osoba a zaměstnance objekty. Chcete-li to provést, klikněte na tlačítko dědičnosti položku v nástrojů a uvolnění tlačítka myši. Klikněte na tlačítko zaměstnance objektu a pak osoba objektu v O/R Designer. Bude odkazovat na šipku na čáru dědičnosti osoba objektu.

  7. Klikněte na tlačítko dědičnosti řádku na návrhové ploše.

  8. Nastavte diskriminátoru vlastnost vlastnost typu.

  9. Nastavte odvozené třídy diskriminátoru hodnotu vlastnost 2.

  10. Nastavte hodnota diskriminátoru třídy Base vlastnost 1.

  11. Nastavte dědičnosti výchozí vlastnost osoba.

  12. Sestavte projekt.

Spusťte dotaz na zděděné třídu a zobrazení dat ve formuláři

Nyní přidáte nějaký kód do formuláře, který se dotazuje na určitou třídu v objektovém modelu.

Vytvoření dotazu LINQ a zobrazit výsledky ve formuláři

  1. Přetáhněte ListBox do formuláře Form1.

  2. Poklepejte na formulář, chcete-li vytvořit Form1_Load obslužná rutina události.

  3. Přidejte následující kód do Form1_Load obslužná rutina události:

    Dim dc As New DataClasses1DataContext  
    Dim results = From emp In dc.Persons _  
        Where TypeOf emp Is Employee _  
        Select emp  
    
    For Each Emp As Employee In results  
        ListBox1.Items.Add(Emp.LastName)  
    Next  
    
    NorthwindDataContext dc = new DataClasses1DataContext();  
    var results = from emp in dc.Persons  
                  where emp is Employee  
                  select emp;  
    
    foreach(Employee Emp in results)  
    {  
        listBox1.Items.Add(Emp.LastName)  
    }  
    

Testování aplikace

Spusťte aplikaci a ověřte, zda jsou záznamy zobrazené v seznamu všechny zaměstnance (záznamy, které mají v jejich sloupec typu hodnota 2).

Testování aplikace

  1. Stisknutím klávesy F5.

  2. Ověřte, zda jsou zobrazeny pouze záznamy, které mají hodnotu 2 ve sloupci jejich typu.

  3. Zavřete formulář. (Na ladění nabídky, klikněte na tlačítko Zastavit ladění.)

Viz také

Technologie LINQ to SQL nástroje v sadě Visual Studio
How to: Add LINQ to SQL Classes to a Project (O/R Designer)
Walkthrough: Creating LINQ to SQL Classes (O/R Designer)
Postupy: přiřazení uložené procedury k provedení aktualizace, vložení a odstranění (Návrhář relací objektů)
LINQ to SQL
How to: Generate the Object Model in Visual Basic or C#