Если вы знаете, что это всегда будет свойство (а не поле), вы можете сделать это следующим образом:
public static void Map<T>(Expression<Func<T, object>> expression)
{
var memberExpression = (MemberExpression)expression.Body;
var property = (PropertyInfo)memberExpression.Member;
var name = property.Name.Dump();
var type = property.PropertyType.Dump();
}
Это также исправляет ошибку, о которой я упоминал в комментарии.