Hirdetés
- gban: Ingyen kellene, de tegnapra
- kraftxld: Diáklaptop - Dell Latitude 3140 - Királyunk ajándéka
- eBay-es kütyük kis pénzért
- Aweriot: Cloudflare és mi
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- potyautas: Levél gyermekemnek
- Luck Dragon: Asszociációs játék. :)
- sziku69: Fűzzük össze a szavakat :)
- f(x)=exp(x): A laposföld elmebaj: Vissza a jövőbe!
- droidic: Gmail + MI: na, mi van bekapcsolva?
Új hozzászólás Aktív témák
-
joysefke
veterán
válasz
Alexios
#9707
üzenetére
Nekem ezzel és ehhez hasonló generikus repositorikkal: Implementing the Repository and Unit of Work Patterns in an ASP.NET MVC Application (9 of 10) | Microsoft Docs
Az a bajom, hogy az ilyen metódusok mint Update<T>(T entity) , esetleg Save<T> (vagy Upsert<T>), Delete() elhitetik a hívó oldalon, hogy ennyire egyszerű a perzisztencia, hogy meghívod őket utána a UoW-ön egy Save()-t és kész. És hogy ez mindenre működik amit típus paraméterként át tudnak adni.
Holott
-nem feltétlenül értelmezhető/működik minden lehetséges T entitás típuson az összes művelet,
-nem hívhatsz egymástól függetlenül mindenféle Repository metódust egy UoW tranzakción belül,
-illetve lehet hogy mondjuk az Update<T>(T entity) működik, de mondjuk az adott konkrét entitásra nem a mindenkire érvényes implementáció-t akarná a kliens kód hajtani.
-Az is lehet hogy van egy entitásod ami már trackelve van, mivel az egyik repository metódus impliciten előkerítette, majd a másik ráhív egy attach-ot a már trackelt entitásra. => exception, holott amit a kliens el akar érni annak van értelme és meg is valósítható lenne egy tranzakción belül (DB engedné egy megfelelő SP-vel, illetve engedné az EF is, ha ügyesen lenne megcsinálva).Ami nekem sokkal szimpatikusabb:
Kliens kód kap egy interfészt amin azok a perzisztencia műveletek vannak amelyekre a kliensnek konkrétan szüksége van.
Az interfészt megvalósító osztály EF-függő, az adott metódusa pedig közvetlenül indít EF dbcontext-et (lehetőleg DI-on keresztül szerez ehhez egy DbContextFactoryt vagy azzal egyenértékű opciót amiből Contextet lehet előállítani), közvetlenül attach-csolhat entitást és állít EntityState-t, illetve menti a tranzakciót. Tehát kihasználja az EF tényleges tudását és azt biztosítja a hívónak amire annak szüksége van, lehetőleg egyetlen hívásból.
Ú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!
- DELL Latitude 5495 (AMD Ryzen 5 PRO / 16GB DDR4 / AMD VEGA 8 / 256GB / Windows 11)
- DELL VOSTRO 3490 (Core i5--10210U / 16GB / 256GB / 14"FHD / HUN BILL/ Win11) 27% ÁFA
- Xiaomi Redmi Note 13 8/256GB fekete garanciával
- Xiaomi 15T Pro 12/512gb - Makulátlan, Euronics számla, garancia, akár beszámítással
- iPhone 15 Pro Max Spacegray 100% akkumulátorral!
- Törött Apple iMac 19.2 i5-8500 Radeon Pro 560X 4GB 16GB 256GB SSD 21.5" 4K Retina
- Új és régi konzolok Okosítása és Szoftveres szintű javítása - RÉSZLETEK A LEÍRÁSBAN
- HP Zbook Studio G8 WorkStation i7-11850H 32GB 512GB Nvidia Quadro T1200 400NIT, 100% sRGB Garis!
- Nagyakkus, mobilnetes - Dell Latitude 5330 i3-1215U 6mag! 16GB 512GB 13.3" FHD 1 év gar
- GYÖNYÖRŰ iPhone 12 mini 64GB White -1 ÉV GARANCIA - Kártyafüggetlen, MS3849, 100% Akksi
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopműhely Bt.
Város: Budapest

