You just need Expression.Property , and then wrap it in lambda. One tricky bit is that you also need to convert the result to object :
var parameter = Expression.Parameter(x); var property = Expression.Property(parameter, propInfo); var conversion = Expression.Convert(property, typeof(object)); var lambda = Expression.Lambda<Func<T, object>>(conversion, parameter); Map(lambda).To(name);
source share