IEnumerator <KeyValuePair <string, object> > IEnumerable <KeyValuePair <string, object> > .GetEnumerator() { foreach (var a in ReflectionTool.FieldsAndPropertiesOf(target.GetType())) { yield return(new KeyValuePair <string, object>(a.Name, ReflectionTool.GetMemberValue(a, target))); } }
public IEnumerator <KeyValuePair <MemberInfo, object> > GetEnumerator() { foreach (var a in ReflectionTool.FieldsAndPropertiesOf(target.GetType())) { yield return(new KeyValuePair <MemberInfo, object>(a, ReflectionTool.GetMemberValue(a, target))); } }
public static IEnumerable <MemberInfo> AttributedMembersWhere <T>(this Type type, Func <MemberInfo, T, bool> act) where T : Attribute { var members = ReflectionTool.FieldsAndPropertiesOf(type); if (act == null) { return(new List <MemberInfo>()); } return(members.Where(m => { var vatt = m.GetCustomAttribute <T>(); return vatt != null && act.Invoke(m, vatt); })); }
private void RefreshKeysAndValues() { keys = ReflectionTool.FieldsAndPropertiesOf(target.GetType()).Select(x => x.Name).ToArray(); values = ReflectionTool.FieldsAndPropertiesOf(target.GetType()).Select(x => ReflectionTool.GetMemberValue(x, target)).ToArray(); }
public static MemberInfo[] GetFieldsAndProperties(this Type t) { return(ReflectionTool.FieldsAndPropertiesOf(t)); }