internal static RequirementClass RequirementScan(object obj) { Type RType = obj.GetType(); RequirementClass[] rClasses = (RequirementClass[])RType.GetCustomAttributes(typeof(RequirementClass), false); if (rClasses.Length > 0) { RequirementClass rClass = rClasses[0]; foreach (FieldInfo field in RType.GetFields(BindingFlags.NonPublic | BindingFlags.Instance)) { RequiredField[] requirements = (RequiredField[])field.GetCustomAttributes(typeof(RequiredField), false); foreach (RequiredField r in requirements) { r.Target = field.GetValue(obj); rClass.Add(r); } } return(rClass); } return(null); }
private void Initialize() { foreach (DatabaseType dbType in Enum.GetValues(typeof(DatabaseType))) { i_accountSqlType.Items.Add(dbType); i_worldSqlType.Items.Add(dbType); i_characterSqlType.Items.Add(dbType); } m_otoClass = Manager.OTOScan(this); m_rClass = Manager.RequirementScan(this); if (m_otoClass != null) { m_otoClass.GetValues(); } }