- Mini-ITX
- Micro Four Thirds
- Vezetékes FEJhallgatók
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- 3D nyomtatás
- A Micron újszerű módszerrel javítja QLC-s SSD-jének sebességét
- Otthoni időjárás-állomás
- Továbbfejlődött a Keychron egéralternatívája a Logitech MX Masterre
- Kettő együtt: Radeon RX 9070 és 9070 XT tesztje
Új hozzászólás Aktív témák
-
martonx
veterán
válasz
bandi0000 #8523 üzenetére
Ez a linq még egészen olvasmányos. Szerintem itt nagyobb baj, hogy jó eséllyel fogalmad sincs, hogy SQL-ben hogy fognád meg ezt a problémát, mit jelent a groupby, hogyan dolgozzunk halmazokkal.
Nem szeretem ezt a fajta LINQ szintaktikát, na mindegy, közé kommenteztem, hátha így érthetőbb lesz, hogy mi - mit csinál.var data = //itt semmi értelme kiírni, hogy IQueryable<CreditReport> egy var bőven rövidebb
from enrollment in _context.Enrollments.Include(x => x.Student.LastName).Include(y => y.Course.Credits)
// a két include egy-egy sql joinnak felel meg, de rögtön szűr is, hogy csak 1-1 mezőt ad vissza
// gyanús, hogy ez felesleges bonyolítás, mert az enrollment-nek eleve van egy Student propertyje
// és talán Course property-je is? Ha jól van mappelve
group enrollment.Student by enrollment.Student.Id into dateGroup //itt csak szimplán rossz a dateGroup név :D mert ez StudentId-ra groupol :D
select new CreditReport()
{
FullName = dateGroup.FirstOrDefault().FirstMidName + " " + dateGroup.FirstOrDefault().LastName,
Credits = dateGroup.FirstOrDefault().Enrollments.Sum(x => x.Course.Credits)
};Selecten belül már nem kommenteztem, gondolom az triviális, hogy a group by-olt datasetből milyen adatokat veszel ki.
Szóval én a helyedben elsőre erősen utána néznék, hogy ugyanezt szimpla SQL-ben hogyan írnád meg, és miért, mire való a join, group by. Ha az SQL hátteret már érted, akkor a LINQ-t is jobban érteni fogod, hiszen az semmi mást nem csinál, mint egy SQL parancsot ad ki, csak épp nem SQL szintaktikával, hanem C# szintaktikával megfogalmazva.
Ú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!
- AKCIÓ! Lenovo Legion Slim 5 16AHP9 notebook - R7 8845HS 16GB RAM 512GB SSD RTX 4060 8GB Win11
- BESZÁMÍTÁS! ASUS VivoBook X1504ZA notebook - i3 1215U 16GB DDR4 RAM 512GB SSD Intel UHD IGP WIN11
- BESZÁMÍTÁS! Gigabyte H370 i5 9500 32GB DDR4 512GB SSD RTX 2060 Super 8GB ZALMAN S2 TG be quiet! 650W
- Fotó állvány eladó
- Csere-Beszámítás! AMD Számítógép PC Játékra! R5 5500 / RX 5700XT / 32GB DDR4 / 256SSD+1TB HDD
Állásajánlatok
Cég: PC Trade Systems Kft.
Város: Szeged
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest