Property Name to Lambda Expression C#

Renan Araújo

How can I convert a property name to Lambda expression in C#?

Like this: string prop = "Name"; to (p => p.Name)

public class Person{
    public string Name{ get; set; } 
}

Thanks!

Taher Rahgooy

Using expression trees you can generate the lambda expression.

using System.Linq.Expressions;
public static Expression<Func<T, object>> GetPropertySelector<T>(string propertyName)
{
    var arg = Expression.Parameter(typeof(T), "x");
    var property = Expression.Property(arg, propertyName);
    //return the property as object
    var conv = Expression.Convert(property, typeof(object));
    var exp = Expression.Lambda<Func<T, object>>(conv, new ParameterExpression[] { arg });
    return exp;
}

for Person you can call it like:

var exp = GetPropertySelector<Person>("Name");//exp: x=>x.Name

Collected from the Internet

Please contact [email protected] to delete if infringement.

edited at
0

Comments

0 comments
Login to comment

Related

From Java

Retrieving Property name from lambda expression

From Dev

Using lambda expression to get property OR type name

From Dev

C# - constant property is equivalent to lambda expression?

From Dev

How do I use and ExpressionTree to access the name of the property in a lambda expression

From Dev

Lambda expression on array property

From Dev

c# Lambda Expression - Get property value from string

From Dev

Property Get via Lambda Expression

From Dev

Limit a lambda expression to a simple property

From Dev

Limit a lambda expression to a simple property

From Dev

Regular expression to check valid property name in c#

From Dev

Definition of name property in assignment expression

From Dev

Using lambda to identify property name

From Dev

C# expression Lambda

From Dev

How to use a lambda expression to update a property?

From Dev

How to dynamically change property in lambda expression

From Dev

Get the first item property with lambda expression

From Dev

Getting Count() property in Dynamic Lambda Expression

From Dev

How to dynamically change property in lambda expression

From Dev

Buffering an expression via property in LINQ (vs Lambda)

From Dev

Dynamic lambda expression (OrderBy) and nullable property type

From Dev

How to define property with lambda expression in Python

From Dev

How can I turn a lambda expression specifying a property into an asp.net mvc compatible 'name' string representing the same?

From Dev

Get the method name that was passed through a lambda expression?

From Dev

Java lambda expression - how interface name was omitted?

From Dev

Kotlin - get name from lambda expression

From Dev

initialization by lambda expression in c++

From Dev

C# without lambda expression

From Dev

How to get property name from expression

From Dev

How to get property name from expression

Related Related

  1. 1

    Retrieving Property name from lambda expression

  2. 2

    Using lambda expression to get property OR type name

  3. 3

    C# - constant property is equivalent to lambda expression?

  4. 4

    How do I use and ExpressionTree to access the name of the property in a lambda expression

  5. 5

    Lambda expression on array property

  6. 6

    c# Lambda Expression - Get property value from string

  7. 7

    Property Get via Lambda Expression

  8. 8

    Limit a lambda expression to a simple property

  9. 9

    Limit a lambda expression to a simple property

  10. 10

    Regular expression to check valid property name in c#

  11. 11

    Definition of name property in assignment expression

  12. 12

    Using lambda to identify property name

  13. 13

    C# expression Lambda

  14. 14

    How to use a lambda expression to update a property?

  15. 15

    How to dynamically change property in lambda expression

  16. 16

    Get the first item property with lambda expression

  17. 17

    Getting Count() property in Dynamic Lambda Expression

  18. 18

    How to dynamically change property in lambda expression

  19. 19

    Buffering an expression via property in LINQ (vs Lambda)

  20. 20

    Dynamic lambda expression (OrderBy) and nullable property type

  21. 21

    How to define property with lambda expression in Python

  22. 22

    How can I turn a lambda expression specifying a property into an asp.net mvc compatible 'name' string representing the same?

  23. 23

    Get the method name that was passed through a lambda expression?

  24. 24

    Java lambda expression - how interface name was omitted?

  25. 25

    Kotlin - get name from lambda expression

  26. 26

    initialization by lambda expression in c++

  27. 27

    C# without lambda expression

  28. 28

    How to get property name from expression

  29. 29

    How to get property name from expression

HotTag

Archive