Beispiel #1
0
 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);
     }
 }
Beispiel #2
0
        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);
        }
Beispiel #3
0
 public static object GetMemberValue(this MemberInfo member, object target)
 {
     return(member.MemberType == MemberTypes.Property
             ? member.CastTo <PropertyInfo>().GetValue(target)
             : member.CastTo <FieldInfo>().GetValue(target));
 }
Beispiel #4
0
 public static Type GetMemberType(this MemberInfo member)
 {
     return(member.MemberType == MemberTypes.Property
             ? member.CastTo <PropertyInfo>().PropertyType
             : member.CastTo <FieldInfo>().FieldType);
 }