8. diel - E-shop v ASP.NET - Základ - Repository
V minulej lekcii, E-shop v ASP.NET - Základ - Relácia produktov a kategórií , sme nastavili relácie medzi entitami pre produkty a kategórie a vložili testovacie dáta.
Dnes sa v ASP.NET Core tutoriálu pozrieme na jednu z možných implementácií návrhového vzoru Repository.
Budeme zase pracovať iba v dátovej vrstve,
teda v projekte Eshop.Data
.
Zmyslom návrhového vzoru Repository je mať všetky operácie s dátami na jednom mieste aplikácie a taktiež odtieniť ostatné vrstvy od implementácie úložiska. V kombinácii s používaním rozhrania a nejakým Dependency Injection frameworkom je možné napríklad jednoducho nahradiť úložisko bez akýchkoľvek zásahov vo vyšších vrstvách aplikácie. Navyše je možné aj aplikácie lepšie testovať pomocou automatických testov.
Triedam, ktoré zaisťujú prácu s dátami v úložisku, sa hovorí repositára (repositories).
Spoločný základ
Pretože základné metódy pre prácu s dátami budú pre všetky entity rovnaké, môžeme vytvoriť spoločný základ repositárov ako generickú abstraktnú triedu. Vzhľadom na generický Entity Framework môžeme tieto metódy rovno implementovať. Najprv si vytvoríme rozhranieIRepository
, ktoré implementujeme v novom
BaseRepository
.
Rozhranie IRepository
Do dátovej vrstvy pridáme zložku Interfaces/
. Do tohto
priečinka pridáme generické rozhranie
IRepository<TEntity>
. V rozhraní IRepository
predpíšeme hlavičky metód reprezentujúce CRUD operácie
(teda Create, Read, Update, Delete):
...koniec náhľadu článku...
Pokračuj ďalej
Minul si až sem a to je super! Veríme, že ti prvé lekcie ukázali niečo nového a užitočného.
Chceš v kurze pokračovať? Prejdi do prémiové sekcie.
Kúpiť tento kurz
Pred kúpou tohto článku je potrebné kúpiť predchádzajúci diel
Obsah článku spadá pod licenciu Premium no-reselling II, kúpou článku súhlasíš so zmluvnými podmienkami.
Komerčný článok (licencia no-reselling)
Tento článok vznikol na základe mnohoročných skúseností v odbore a opisuje vývoj profesionálneho komerčného produktu alebo jeho súčasti, ktorú možno priamo využiť za účelom zisku alebo k preniknutiu do komerčnej sféry IT odvetvia.
Tieto vrcholové znalosti sprístupňujeme samozrejme iba niektorým členom komunity, ktorí sa majú záujem vypracovať na profesionálov v odbore a preto sú k dispozícii len za kredity. Kód z článku môžete použiť pre jeden svoj komerčný projekt. Nie je ho však možné prepredávať (raz zakúpiť a následne predať ďalej v niekoľkých projektoch). Ak potrebujete širšie využitie kódu, radi sa s vami dohodneme na komerčnej licencii. Viac informácií nájdete v článku Licencia.
Ste pripravení stať sa profesionálmi v odbore? Stačí kliknúť.
Popis článku
Požadovaný článok má nasledujúci obsah:
V ASP.NET Core tutoriále implementujeme návrhový vzor Repository. Vytvoríme si prvých repositárov pre produkty a kategórie.
Kredity získaš, keď podporíš našu sieť. To môžeš urobiť buď zaslaním symbolickej sumy na podporu prevádzky alebo pridaním obsahu na sieť.