/// <summary> /// Used for describing commands /// </summary> /// <param name="type"></param> /// <param name="DataType"></param> public NamedParam(Type type, Type DataType) : this() { _Type = type; _value = NullType.GetNullType(DataType); _key = _Type.Name; }
public static List <NamedParam> GetMemberValues(string prefix, Object properties, Action <MemberInfo, object> GetUUIDType) { List <NamedParam> dict = new List <NamedParam>(); if (properties == null) { return(dict); } Type t = properties.GetType(); KeyValuePair <List <PropertyInfo>, List <FieldInfo> > vvv = GetPropsForTypes(t); HashSet <string> lowerProps = new HashSet <string>(); BindingFlags flags = BindingFlags.Instance | BindingFlags.Public; //BindingFlags.NonPublic foreach ( PropertyInfo o in vvv.Key) { { try { var v = o.GetValue(properties, null); if (v == null) { v = new NullType(properties, o); } if (GetUUIDType != null) { GetUUIDType(o, v); } dict.Add(new NamedParam(properties, o, prefix + o.Name, o.PropertyType, v)); } catch (Exception e) { DLRConsole.DebugWriteLine("" + e); } } } foreach (FieldInfo o in vvv.Value) { try { var v = o.GetValue(properties); if (v == null) { v = new NullType(properties, o); } if (GetUUIDType != null) { GetUUIDType(o, v); } dict.Add(new NamedParam(properties, o, prefix + o.Name, o.FieldType, v)); } catch (Exception e) { DLRConsole.DebugWriteLine("" + e); } } return(dict); }