Hirdetés
- Samsung Galaxy S25 - végre van kicsi!
- Honor Magic6 Pro - kör közepén számok
- Milyen okostelefont vegyek?
- Google Pixel topik
- Honor Magic8 Pro - bevált recept kölcsönvett hozzávalókkal
- Nothing Phone 2a - semmi nem drága
- Kuo: Az Apple lenyelheti a dráguló memóriaárakat az iPhone 18-nál
- Íme az új Android Auto!
- Samsung Galaxy S24 - nos, Exynos
- Új dizájn, régi ár: fülbemászó ajánlattal búcsúztatja a Samsung a telet
Új hozzászólás Aktív témák
-
joysefke
veterán
válasz
bandi0000
#9945
üzenetére
Ahogy már írták a DbContext már önmagában is repository és unit of work.
Innen kezdve ha becsomagolod egy generikus repository + UoW absztrakcióba, akkor azt nem a funkcionalitás miatt teszed, hanem hogy elfedd a EntityFramework-öt, tehát hogy a repositoryt használó kód ne tudja magát az adott EfCore verzióhoz/funkciókhoz láncolni.
akkor van valami köztes réteg még a felület és az adatbázis közt, ami pl olyan feladatot látna el, hogy mentéskor ha ügyfelet és autót akarunk menteni, akkor a felületen kb csak annyi hívás legyen, hogy: SaveClientWithCar(Client client, Car car) és ez a köztes réteg lezongorázza a mentéseket ID generálással és beállítással?
Igen, a repository egy low level absztrakció az adathozzáférési rétegben.
Ha van egy featuröd (amit mondjuk egy UI page valósít meg) akkor annak a featurenek lesz konkrét igénye hogy adatokat tudjon olvasni a DB-ből (amit megjelenít a user számára) illetve a user által módosított adatokat perzisztálni tudja DB-be.
Az adatok formájára nézve a feature nyilván konkrét kívánalmakat fogalmaz meg. (e.g. mutasd az összes usert akinek van autója az autója típusával és évjáratával együtt) illetve meghatározza, hogy melyik adatmorzsa módosítható és melyik nem a feature kontextusában.Itt érdemes egy a featuret kiszolgáló, a repositorynál magasabb absztrakciós szinten lévő, data access service osztályt definiálni ami a repositoryra támaszkodva keríti elő a featuret hajtó kód számára az adatokat illetve menti el a változásokat. A repository-ból visszaadott adatokat arra a formára tudja adaptálni amilyen formában a featurnek szüksége van rá.
egy alternatíva lehet, hogy hagyod a repository patternt és ezeket az adott featuret kiszolgáló data access service osztályokat közvetlenül az Ef DbContext-re építed (DI-t használva nyilván) aztán a featuret hajtó logika használja ezeket (ezek interfészét).
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Spórolós topik
- Samsung Galaxy S25 - végre van kicsi!
- Információbiztonság, kiberbiztonság, adatvédelem
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- Kínai és egyéb olcsó órák topikja
- Honor Magic6 Pro - kör közepén számok
- Milyen okostelefont vegyek?
- Jövedelem
- Le Mans Ultimate
- Fujifilm X
- További aktív témák...
- ÁRGARANCIA!Épített KomPhone Ryzen 5 5600X 16/32/64GB RAM RTX 5060 8GB GAMER PC termékbeszámítással
- HIBÁTLAN iPhone 12 Pro 128GB Silver-1 ÉV GARANCIA - Kártyafüggetlen, MS4440, 100% Akksi
- Eredeti Microsoft Windows 10 / 11 Pro OEM licenc Akciós áron! 64/32 bit Azonnali kézbesítéssel
- iPhone 13 Pro Max 128GB 100% (1év Garancia)
- Bomba ár! HP ProBook 430 G4 - i5-G7 I 8GB I 128GB SSD I HDMI I 13,3" I Cam I W11 I Gari!
Állásajánlatok
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs
Cég: Laptopműhely Bt.
Város: Budapest


