Esempio n. 1
0
 private void AssignRequiredDao(Type modType, IGameModule modInst)
 {
     MemberInfo[] members = modType.GetMembers(BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance);
     foreach (var member in members)
     {
         if (member.IsDefined(typeof(RequireDaoAttribute)))
         {
             if (member.MemberType == MemberTypes.Field)
             {
                 FieldInfo field   = (FieldInfo)member;
                 Type      reqType = field.FieldType;
                 field.SetValue(modInst, Daos.GetDao(reqType));
             }
             if (member.MemberType == MemberTypes.Property)
             {
                 PropertyInfo prop    = (PropertyInfo)member;
                 Type         reqType = prop.PropertyType;
                 prop.SetValue(modInst, Daos.GetDao(reqType));
             }
         }
     }
 }