Avatar billede CodingJoe Nybegynder
03. oktober 2012 - 22:58 Der er 1 kommentar og
1 løsning

Forsimple et LINQ udtryk, der er nested

Jeg sidder for sjov skyld at forsøge med noget nested LINQ. Det kan være man kan løse det ved ikke at neste det.

Jeg har noget data, der bliver hentet.

Fx.
var biler = BilManager.HentBiler();

og et LINQ udtryk:

var bilMedKopi = biler.Where(c => c.Farve == Farve.Blaa).Select(b => new Bil { Maerke = b.Maerke, Model = b.Model, Kopibil = biler.Where(c => c.Farve == Farve.Blaa).Select(d => new Bil { Farve = b.Farve, Model = b.Model }).FirstOrDefault() }).FirstOrDefault();

Nu giver det ikke mening, at jeg kan have en bil i en bil, men forsøger her for sjovt. Som man kan se her, så laver jeg et .Where en gang for meget. Jeg vil gerne prøve at undgå at lave den anden where, hvor jeg prøver at definere / kopiere en ny bil i en bil. Kan man ikke forsimple mit LINQ udtryk?
Avatar billede CodingJoe Nybegynder
03. oktober 2012 - 23:35 #1
Argh!!!

Selfølgelig....tog lige en pause fra skærmen, og kan se jeg vist har stirret blindt på noget før...jeg gøre bare sådan her :o)

var bilMedKopi = biler.Where(c => c.Farve == Farve.Blaa).Select(b => new Bil { Maerke = b.Maerke, Model = b.Model, Kopibil = new Bil() { Aargang = b.Aargang, Model = b.Model, Maerke = b.Maerke } }).FirstOrDefault();
Avatar billede CodingJoe Nybegynder
03. oktober 2012 - 23:35 #2
.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester