Skip to main content

Posts

Showing posts with the label nume proprietate

Cum sa obtinem numele unei proprietati folosind lambda expression

Nu odată ne-am lovit de acesta problema. Cum sa transmit numele unei proprietăți ca si string, fara sa fiu obligat in cazul unei redenumiri sa nu trebuiasca sa caut prin tot codul. O solutie este crearea unei clase de mapare, dar aceasta trebuie sa fie tot timpul adusa la zi. O alta solutie este sa folosim reflection. Putem sa ne cream un helper care sa rezolve problema, dar lucrurile se complica cand vrem rezultatul sa fie sub forma: "proprietateParinte.proprietateCopil". Cei care folosesc MVC stiu ca acesta vine in ajutorul programatorilor cu ExpressionHelper.GetExpressionText (exprisieLambda) . Acesta metoda este des folosita cand se lucreaza cu ViewModel. Dar ce ne facem daca nu suntem intr-o aplicatie ASP.NET MVC? O solutie este sa luam expresia lambda si sa o descompunem. Prin acest mecanism putem sa iteram prin fiecare parte din expresie. Prin intermediul propietatii Body putem sa obtinem body-ul expresiei, iar in functie de tipul expresiei putem sa stim pe ce pozitie