/// <summary> /// if targetType is oldType, method will return newType /// if targetType is not oldType, method will return targetType /// if targetType is generic type with oldType arguments, method will replace all oldType arguments on newType /// </summary> /// <param name="targetType"></param> /// <param name="oldType"></param> /// <param name="newType"></param> /// <returns></returns> public static Type ReplaceItemType(this Type targetType, Type oldType, Type newType) => ReflectionHelper.ReplaceItemType(targetType, oldType, newType);
public static MemberInfo FindProperty(LambdaExpression lambdaExpression) => ReflectionHelper.FindProperty(lambdaExpression);
public static Type GetMemberType(this MemberInfo memberInfo) => ReflectionHelper.GetMemberType(memberInfo);
public static IEnumerable <MemberInfo> GetMemberPath(Type type, string fullMemberName) => ReflectionHelper.GetMemberPath(type, fullMemberName);
public static MemberInfo GetFieldOrProperty(this LambdaExpression expression) => ReflectionHelper.GetFieldOrProperty(expression);
public static void SetMemberValue(this MemberInfo propertyOrField, object target, object value) => ReflectionHelper.SetMemberValue(propertyOrField, target, value);
public static object GetMemberValue(this MemberInfo propertyOrField, object target) => ReflectionHelper.GetMemberValue(propertyOrField, target);
public static bool IsDynamic(this Type type) => ReflectionHelper.IsDynamic(type);
public static bool IsDynamic(this object obj) => ReflectionHelper.IsDynamic(obj);
public static object MapMember(this ResolutionContext context, MemberInfo member, object value, object destination = null) => ReflectionHelper.MapMember(context, member, value, destination);
public static object GetDefaultValue(this ParameterInfo parameter) => ReflectionHelper.GetDefaultValue(parameter);
public static object MapMember(this ResolutionContext context, MemberInfo member, object value) => ReflectionHelper.MapMember(context, member, value);