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!
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!
A lambda is just an anonymous function. You can store lambdas in delegates just like regular methods. I suggest you try making "Name" a property.
public string Name { get { return p.Name; } }
If you really want a lambda, use a delegate type such as Func.
public Func<string> Name = () => p.Name;
Using expression trees you can generate the lambda expression.
for
Person
you can call it like: