Lekce 5 - ASP.NET Web API - Repository
V minulé lekci, ASP.NET Web API - Databáze, jsme si nechali pomocí migrací z Entity Framework vygenerovat naši databázi.
V dnešním ASP.NET Web API tutoriálu, v jazyce C# .NET, si představíme návrhový vzor Repository a rovnou jej do našeho projektu implementujeme.
Smyslem návrhového vzoru Repository je mít všechny operace s daty na jednom místě aplikace a odstínit ostatní vrstvy od implementace úložiště. V kombinaci s používáním rozhraní a nějakým dependency injection frameworkem pak lze například jednoduše nahradit úložiště bez jakýchkoliv zásahů ve vyšších vrstvách aplikace. Navíc je možné také aplikace lépe testovat pomocí automatických testů.
Třídám, které zajišťují práci s daty v úložišti, se říká
repositáře (repositories). Ve vrstvě webového API tak
nebudeme k databázi přistupovat přímo přes náš databázový kontext
MoviesDbContext
, ale právě přes repositáře.
Společný základ
Protože základní metody pro práci s daty budou pro všechny entity
stejné, můžeme vytvořit společný základ repositářů
jako generickou abstraktní třídu. Vzhledem ke generickému Entity Frameworku
můžeme tyto metody rovnou implementovat. Nejprve si vytvoříme rozhraní
IBaseRepository
, které následně implementujeme v základním
repositáři BaseRepository
.
Rozhraní IBaseRepository
Pro všechna rozhraní si v projektu Movies.Data
založíme
složku Interfaces/
. Prvním, které do této složky přidáme,
bude právě rozhraní IBaseRepository
. V tomto rozhraní si
předepíšeme hlavičky metod reprezentující CRUD operace (tedy
Create, Read, Update,
Delete) a hlavičku metody pro zjištění, zda v databázi
existuje záznam s konkrétním ID:
...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 III, koupí článku souhlasíš se smluvními podmínkami.
- Neomezený a trvalý přístup k jednotlivým lekcím.
- Kvalitní znalosti v oblasti IT.
- Dovednosti, které ti pomohou získat vysněnou a dobře placenou práci.
Popis článku
Požadovaný článek má následující obsah:
V ASP.NET Web API tutoriálu si představíme návrhový vzor Repository a rovnou jej do našeho projektu implementujeme.
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íť.