Vraag : Het schrijven van elegante vragen LINQ die lamdauitdrukkingen gebruiken

Kan iemand me in het schrijven van deze vraag gebruikend een elegantere benadering uit helpen?  Hoewel dit vraagwerk, ik zou houden van neaten/verkort het - gebruikend uitdrukkingen Lamda indien mogelijk, behalve mijn kennis Lamda is een kleine limited.

I am gebruikend Sitefinity om deze toepassing te ontwikkelen, en deze vraag impliceert sommige douanelijsten en 2 Sitefinity ingebouwde tables.
" codeBody "
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
public statische IQueryable GetUserDetailsById (user-id Guid)
        {
            //Create een geval van het voorwerp TicketRequestDataContext.
            TicketRequestDataContext db = nieuwe TicketRequestDataContext ();

            IQueryable userDetails = van u in db.telerik_UserMetaInfos
                                     waar user-id u.UserId ==
                                     selecteer nieuw
                                     {
                                         FirstName = (van F in db.telerik_UserMetaInfos
                                                      waar f.PropertyName == „FirstName“
                                                      selecteer f.Text),
                                         LastName = (van l in db.telerik_UserMetaInfos
                                                     waar l.PropertyName == „LastName“
                                                     selecteer l.Text),
                                         E-mail = (van e in db.telerik_Users
                                                  waar user-id e.UserId ==
                                                  selecteer e.Email). Kies () uit,
                                         JobTitle = (van j in db.telerik_UserMetaInfos
                                                     waar j.PropertyName == „JobTitle“
                                                     selecteer j.Text),
                                         DirectPhone = (van D in db.telerik_UserMetaInfos
                                                        waar d.PropertyName == „DirectPhone“
                                                        selecteer d.Text),
                                         Mobilofoon = (van m in db.telerik_UserMetaInfos
                                                        waar m.PropertyName == „Mobilofoon“
                                                        selecteer m.Text),
                                         FaxNumber = (van F in db.telerik_UserMetaInfos
                                                      waar f.PropertyName == „FaxNumber“
                                                      selecteer f.Text),
                                         Address1 = (van a in db.telerik_UserMetaInfos
                                                     waar a.PropertyName == „Address1“
                                                     selecteer a.Text),
                                         Address2 = (van a in db.telerik_UserMetaInfos
                                                     waar a.PropertyName == „Address2“
                                                     selecteer a.Text),
                                         Stad = (van c in db.telerik_UserMetaInfos
                                                 waar c.PropertyName == „Stad“
                                                 selecteer c.Text),
                                         Land = (van c in db.telerik_UserMetaInfos
                                                    waar c.PropertyName == „Land“
                                                    selecteer c.Text),
                                         Postcode = (van c in db.telerik_UserMetaInfos
                                                     waar c.PropertyName == „Postcode“
                                                     selecteer c.Text),

                                     };

            keer userDetails terug;
        }
Attachments:

Antwoord : Het schrijven van elegante vragen LINQ die lamdauitdrukkingen gebruiken

Hallo markerasmus;

Zie of past dit uw behoeften.

Fernando
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
openbare statische IQueryable GetUserDetailsById (user-id Guid)
{
    //Create een geval van het voorwerp TicketRequestDataContext.
    TicketRequestDataContext db = nieuwe TicketRequestDataContext ();

    IQueryable userDetails = (van u in db.telerik_UserMetaInfos
                              waar user-id u.UserId ==
                              groeps u door u.UserId in ug
                              selecteer nieuw
                              {
                                  FirstName = ug. Waar (F-N => fn.PropertyName == „FirstName“). Selecteer (F-N = F-N. Tekst). Eerst (),
                                  LastName = ug. Waar (ln => ln.PropertyName == „LastName“). Selecteer (ln = ln. Tekst). Eerst (),
                                  E-mail = db.telerik_Users.Where (u=> user-id u.UserId ==). Selecteer (u = u.Email). Eerst (),
                                  JobTitle = ug. Waar (j => j.PropertyName == „JobTitle“). Selecteer (j = j.Text). Eerst (),
                                  DirectPhone = ug. Waar (D => d.PropertyName == „DirectPhone“). Selecteer (D = d.Text). Eerst (),
                                  Mobilofoon = ug. Waar (m => m.PropertyName == „Mobilofoon“). Selecteer (m = m.Text). Eerst (),
                                  FaxNumber = ug. Waar (F => f.PropertyName == „FaxNumber“). Selecteer (F = f.Text). Eerst (),
                                  Address1 = ug. Waar (een => a.PropertyName == „Address1“). Selecteer (a = a.Text). Eerst (),
                                  Address2 = ug. Waar (een => a.PropertyName == „Address2“). Selecteer (a = a.Text). Eerst (),
                                  Stad = ug. Waar (c => c.PropertyName == „Stad“). Selecteer (c = c.Text). Eerst (),
                                  Land = ug. Waar (c => c.PropertyName == „Land“). Selecteer (c = c.Text). Eerst (),
                                  Postcode = ug. Waar (c => c.PropertyName == „Postcode“). Selecteer (c = c.Text). Eerst ()
                              }) .FirstOrDefault ();

    terugkeer userDetails;
}
Andere oplossingen  
 
programming4us programming4us