Új hozzászólás Aktív témák
-
petyus_
senior tag
válasz
bandi0000 #9944 üzenetére
A táblák összekapcsolását navigation property-kkel oldod meg Entity Framework alatt. Van egy User tábla, egy Car tábla, a User class-on csinálj egy Car property-t. Így ha le akarod kérni a Usernek a Car-ját, azt pl úgy tudod, hogy
context.Users.Where(u => u.Id == id).Include(u => u.Car)
(ha nem hívod meg az include-ot, akkor alapból azokat az adatokat nem tölti be)
Ez ugyanígy működik a másik irányban is, ha Usert (Clientet) akarsz menteni Car-ral együtt, akkor legyen egy User objektumod, amin van egy Car property,
context.Users.Add(user)
context.SaveChanges()
és elmenti a Car-t is.
De ha sokszor akarod használni a Car-t, akár Usertől függetlenül, akkor érdemes csinálni egy CarRepository-t, és azon keresztül dolgozni(mondjuk arról is folyton megy a vita, hogy EntityFramework-ot használva kell-e még külön repository, mivel a DbContext már maga egy repository, meg unit of work)
-
bandi0000
nagyúr
válasz
bandi0000 #9944 üzenetére
+1
Ha ez a UnitOfWork jó dolog, és így kell működnie, 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?
Ú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!
- Csere-Beszámítás! Custom vizes számítógép játékra! I7 12700KF / RTX 3090 / 32GB DDR5 / 1TB SSD
- Sigma 150-600mm f/5-6.3 DG OS HSM C ( Canon ) -Újszerű-
- Dell Latitude 7410 Strapabíró Ütésálló Profi Ultrabook Laptop 14" -80% i7-10610U 16/512 FHD IPS MATT
- Új MSI KATANA 15 Gamer Tervező Laptop 15,6" -35% i7-13620H 10Mag 16/1TB RTX 4060 8GB FHD 144Hz
- HP Omen - 27" IPS - UHD 4K - 144Hz 1ms - NVIDIA G-Sync - FreeSync - HDR 400 - USB-C - KVM Switch
- LG 27GS60QC-B - 27" Ívelt - 2560x1440 - 180Hz 1ms - AMD FreeSync - Bontatlan - 2 Év Gyári Garancia
- Intel X540-T2 dual-port 10GbE RJ45 hálózati vezérlő (10Gbit, 2 port, áfás számla, garancia)
- Csere-Beszámítás! Számítógép PC Játékra! Intel I7 6700/ RX 580 8GB / 32GB DDR4 / 500GB SSD
- Eladó ÚJ, BONTATLAN Samsung Galaxy A05s 4/64GB ezüst / 12 hónap jótállással!
- LG 65QNED87T / 65" - 164 cm QNED / 4K UHD / 120Hz & 3ms / HDR 10 Pro / FreeSync Premium / HDMI 2.1
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: PC Trade Systems Kft.
Város: Szeged