Lekce 5 - E-shop v ASP.NET - Základ - Migrace a první spuštění
V minulé lekci, E-shop v ASP.NET - Základ - Příprava datové vrstvy, jsme se zaměřili na datovou vrstvu.
Připravili jsme si základ autentizace pomocí Identity
a třídy
pro generování databáze.
V dnešním ASP.NET Core tutoriálu si vygenerujeme databázi pomocí migrací. A také aplikaci poprvé spustíme.
Migrace
V reálných aplikacích, jako je tato, je potřeba neustále měnit databázová schémata s tím, jak se mění modely aplikace. To se navíc musí provést tak, aby se z databáze neztratila žádná data. Migrace v Entity Framework Core za nás tento problém řeší.
Jedná se o třídy, které můžeme automaticky generovat pomocí příkazu
Add-Migration
. Výsledkem je nová třída odvozená od
Migration
, obsahující metody Up()
a
Down()
(pokud se od poslední migrace model nezměnil, jsou
prázdné). Tato třída je uložena v samostatném souboru ve složce
Data/Migrations/
v datovém projektu.
Metoda Up()
popisuje změny, které se v databázi vykonají
při aplikaci migrace příkazem Update-Database
.
Metoda Down()
naopak umožňuje tyto změny vzít zpět. Ve složce
Data/Migrations/
nalezneme už scaffoldnutou úvodní migraci pod
názvem CreateIdentitySchema
.
Pokud v metodě Up()
příslušné migrace nalezneme chybu,
upravíme datový model, nikoli samotnou migrační třídu. Po
úpravě datového modelu odebereme chybnou migraci příkazem
Remove-Migration
. Poté přidáme novou migraci příkazem
Add-Migration
a zase zkontrolujeme obsah metody Up()
příslušné migrační třídy. Pokud je obsah metody Up()
už v
pořádku, aplikujeme migraci příkazem Update-Database
.
Datová vrstva
Přesuneme se do projektu Eshop.Data
.
Migrace Identity
Nyní si vytvoříme první vlastní migraci. Spusťme si
...konec náhledu článku...
Pokračuj dál
Došel jsi až sem a to je super! Věříme, že ti první lekce ukázaly něco nového a užitečného.
Chceš v kurzu pokračovat? Přejdi do prémiové sekce.
Koupit tento kurz
Před koupí tohoto článku je třeba koupit předchozí díl
Obsah článku spadá pod licenci Premium no-reselling II, koupí článku souhlasíš se smluvními podmínkami.
Komerční článek (licence no-reselling)
Tento článek vznikl na základě mnohaletých zkušeností v oboru a popisuje vývoj profesionálního komerčního produktu nebo jeho součásti, kterou lze přímo využít za účelem zisku nebo proniknutí do komerční sféry IT odvětví.
Tyto vrcholové znalosti zpřístupňujeme samozřejmě pouze některým členům komunity, kteří se mají zájem vypracovat na profesionály v oboru a proto jsou k dispozici pouze za kredity. Kód z článku můžete použít pro jeden svůj komerční projekt. Není ho však možné přeprodávat (jednou zakoupit a poté prodat dále v několika projektech). Pokud potřebujete širší využití kódu, rádi se s vámi domluvíme na komerční licenci. Více informací naleznete v článku Licence.
Jste připraveni stát se profesionály v oboru? Stačí kliknout.
Popis článku
Požadovaný článek má následující obsah:
V ASP.NET Core tutoriálu završíme přípravu datové vrstvy vygenerováním databáze pomocí migrací. Aplikaci poprvé spustíme.
Kredity získáš, když podpoříš naši síť. To můžeš udělat buď zasláním symbolické částky na podporu provozu nebo přidáním obsahu na síť.