Przewodnik: tworzenie klas LINQ to SQL przy użyciu dziedziczenia z jedną tabelą (O/R Designer)
Narzędzia LINQ to SQL w programie Visual Studio obsługują dziedziczenie z jedną tabelą, ponieważ jest zwykle implementowane w systemach relacyjnych. Ten przewodnik rozszerza ogólne kroki opisane w temacie How to: Configure inheritance by using the O/R Designer (Jak skonfigurować dziedziczenie przy użyciu projektanta języka O/R) i udostępnia kilka rzeczywistych danych, aby zademonstrować użycie dziedziczenia w projektancie O/R.
W tym przewodniku wykonasz następujące zadania:
Utwórz tabelę bazy danych i dodaj do niej dane.
Tworzenie aplikacji Windows Forms.
Dodaj plik LINQ to SQL do projektu.
Utwórz nowe klasy jednostek.
Skonfiguruj klasy jednostek do używania dziedziczenia.
Wykonaj zapytanie względem dziedziczonej klasy.
Wyświetlanie danych w formularzu systemu Windows.
Tworzenie tabeli do dziedziczenia z
Aby zobaczyć, jak działa dziedziczenie, należy utworzyć małą Person
tabelę, użyć jej jako klasy bazowej, a następnie utworzyć Employee
obiekt, który dziedziczy z niej.
Aby utworzyć tabelę podstawową w celu zademonstrowania dziedziczenia
W Eksploratorze serwera lub Eksploratorze bazy danych kliknij prawym przyciskiem myszy węzeł Tabele i kliknij polecenie Dodaj nową tabelę.
Uwaga
Możesz użyć bazy danych Northwind lub dowolnej innej bazy danych, do której można dodać tabelę.
W projektancie tabel dodaj następujące kolumny do tabeli:
Nazwa kolumny Typ danych Zezwalaj na wartości null Identyfikator int Fałsz Type int Prawda FirstName nvarchar(200) Fałsz LastName nvarchar(200) Fałsz Menedżer int Prawda Ustaw kolumnę ID jako klucz podstawowy.
Zapisz tabelę i nadaj jej nazwę Person.
Dodaj dane do tabeli
Aby sprawdzić, czy dziedziczenie jest poprawnie skonfigurowane, tabela potrzebuje pewnych danych dla każdej klasy w dziedziczeniu z jedną tabelą.
Aby dodać dane do tabeli
Otwórz tabelę w widoku danych. (Kliknij prawym przyciskiem myszy ikonę Tabela osób w Eksploratorze serwera lub Eksploratorze bazy danych i kliknij pozycję Pokaż dane tabeli.
Skopiuj następujące dane do tabeli. (Możesz skopiować go, a następnie wkleić go do tabeli, wybierając cały wiersz w tabeli Okienko wyników ).
Identyfikator Type FirstName LastName Menedżer 1 1 Anne Wallace NULL 2 1 Carlos Grilo NULL 3 1 Yael Peled NULL 4 2 Gatis Ozoliny 1 5 2 Andreas Hauser 1 6 2 Tiffany Phuvasate 1 7 2 Aleksiej Orekhov 2 8 2 Michał Poliszkiewicz 2 9 2 Tai Yee 2 10 2 Sieć szkieletowa Noriega 3 11 2 Mindy Martin 3 12 2 Ken Kwok 3
Tworzenie nowego projektu
Po utworzeniu tabeli utwórz nowy projekt, aby zademonstrować konfigurowanie dziedziczenia.
Aby utworzyć nową aplikację Windows Forms
W programie Visual Studio w menu Plik wybierz pozycję Nowy>projekt.
Rozwiń węzeł Visual C# lub Visual Basic w okienku po lewej stronie, a następnie wybierz pozycję Pulpit systemu Windows.
W środkowym okienku wybierz typ projektu Aplikacja Windows Forms.
Nadaj projektowi nazwę InheritanceWalkthrough, a następnie wybierz przycisk OK.
Projekt InheritanceWalkthrough jest tworzony i dodawany do Eksplorator rozwiązań.
Dodawanie pliku LINQ to SQL classes do projektu
Aby dodać plik LINQ to SQL do projektu
W menu Project (Projekt) kliknij pozycję Add New Item (Dodaj nowy element).
Kliknij szablon KLASY LINQ to SQL, a następnie wybierz pozycję Dodaj.
Plik
.dbml
zostanie dodany do projektu, a zostanie otwarty projektant O/R.
Tworzenie dziedziczenia przy użyciu projektanta O/R
Skonfiguruj dziedziczenie, przeciągając obiekt Dziedziczenie z Przybornika na powierzchnię projektową.
Aby utworzyć dziedziczenie
W Eksploratorze serwera lub Eksploratorze bazy danych przejdź do utworzonej wcześniej tabeli Person .
Przeciągnij tabelę Person na powierzchnię projektową projektanta O/R Designer .
Przeciągnij drugą tabelę Person na projektanta O/R i zmień jego nazwę na Employee.
Usuń właściwość Manager z obiektu Person.
Usuń właściwości Type, ID, FirstName i LastName z obiektu Employee. (Innymi słowy, usuń wszystkie właściwości z wyjątkiem Menedżer.)
Na karcie Projektant relacyjny obiektu przybornika utwórz dziedziczenie między obiektami Person i Employee. Aby to zrobić, kliknij element Dziedziczenie w Przyborniku i zwolnij przycisk myszy. Następnie kliknij obiekt Employee, a następnie obiekt Person w Projektancie O/R. Strzałka w wierszu dziedziczenia następnie wskazuje obiekt Person .
Kliknij wiersz Dziedziczenie na powierzchni projektowej.
Ustaw właściwość Dyskryminator właściwości na Typ.
Ustaw właściwość Wartość dyskryminująca klasy pochodnej na 2.
Ustaw właściwość Wartość dyskryminująca klasy bazowej na 1.
Ustaw właściwość Default dziedziczenia na Person.
Skompiluj projekt.
Wykonywanie zapytań względem dziedziczonej klasy i wyświetlanie danych w formularzu
Teraz dodasz kod do formularza, który wykonuje zapytania o określoną klasę w modelu obiektów.
Aby utworzyć zapytanie LINQ i wyświetlić wyniki w formularzu
Przeciągnij pole listy na formę Form1.
Kliknij dwukrotnie formularz, aby utworzyć procedurę
Form1_Load
obsługi zdarzeń.Dodaj następujący kod do programu obsługi zdarzeń
Form1_Load
:
Testowanie aplikacji
Uruchom aplikację i sprawdź, czy rekordy wyświetlane w polu listy są wszystkimi pracownikami (rekordy, które mają wartość 2 w kolumnie Typ ).
Aby przetestować aplikację
Naciśnij klawisz F5.
Sprawdź, czy wyświetlane są tylko rekordy, które mają wartość 2 w kolumnie Typ .
Zamknij formularz. (Na stronie Menu Debugowanie , kliknij pozycję Zatrzymaj debugowanie).