Entity Framework - podejście Code First
Entity Framework zapewnia trzy podejścia do tworzenia modelu jednostki, a każda z nich ma swoje zalety i wady.
- Code First
- Baza danych First
- Model First
W tym rozdziale krótko opiszemy pierwsze podejście do kodu. Niektórzy programiści wolą pracować z Projektantem w kodzie, podczas gdy inni wolą pracować tylko z ich kodem. W przypadku tych deweloperów Entity Framework ma przepływ pracy modelowania nazywany Code First.
Przepływ pracy modelowania Code First jest przeznaczony dla bazy danych, która nie istnieje, a Code First utworzy ją.
Można go również użyć, jeśli masz pustą bazę danych, a następnie Code First doda również nowe tabele.
Code First umożliwia definiowanie modelu przy użyciu klas C # lub VB.Net.
Dodatkową konfigurację można opcjonalnie przeprowadzić przy użyciu atrybutów w klasach i właściwościach lub przy użyciu interfejsu API Fluent.
Dlaczego Code First?
Code First tak naprawdę składa się z zestawu puzzli. Najpierw są twoje klasy domeny.
Klasy domeny nie mają nic wspólnego z Entity Framework. To tylko elementy Twojej domeny biznesowej.
Entity Framework ma zatem kontekst, który zarządza interakcją między tymi klasami a bazą danych.
Kontekst nie jest specyficzny dla Code First. Jest to funkcja Entity Framework.
Code First dodaje konstruktora modelu, który sprawdza klasy, którymi zarządza kontekst, a następnie używa zestawu reguł lub konwencji, aby określić, jak te klasy i relacje opisują model i jak ten model powinien być mapowany do bazy danych.
Wszystko to dzieje się w czasie wykonywania. Nigdy nie zobaczysz tego modelu, jest tylko w pamięci.
Code First ma możliwość użycia tego modelu do utworzenia bazy danych, jeśli jest to wymagane.
Może również aktualizować bazę danych, jeśli model się zmieni, przy użyciu funkcji o nazwie Migracje Code First.