public static void SetMemberValue(this MemberInfo member, object target, object value) { if (member.MemberType == MemberTypes.Property) { member.CastTo <PropertyInfo>().SetValue(target, value); } else { member.CastTo <FieldInfo>().SetValue(target, value); } }
public static List <T> GetActionFilters <T>(MemberInfo memberInfo, bool includeParents = true) { var result = new List <T>(); do { result.AddRange(memberInfo.CastTo <ICustomAttributeProvider>().GetCustomAttributes <T>()); } while (includeParents && (memberInfo = memberInfo.DeclaringType?.GetTypeInfo()) != null); return(result); }
public static object GetMemberValue(this MemberInfo member, object target) { return(member.MemberType == MemberTypes.Property ? member.CastTo <PropertyInfo>().GetValue(target) : member.CastTo <FieldInfo>().GetValue(target)); }
public static Type GetMemberType(this MemberInfo member) { return(member.MemberType == MemberTypes.Property ? member.CastTo <PropertyInfo>().PropertyType : member.CastTo <FieldInfo>().FieldType); }