internal static Type ReflectedType(this IMemberInfo member)
 {
     return member.AsMemberInfo().ReflectedType();
 }
 /// <summary>
 /// Returns the name of the member referenced by the expression
 /// </summary>
 /// <param name="expression"></param>
 /// <returns></returns>
 public static string AsMemberName(this LambdaExpression expression)
 {
     var info = expression.AsMemberInfo();
     return info == null ? null : info.Name;
 }