예제 #1
0
 public WritableAdjustment(Adjustment input) : this()
 {
     name = input.GetType().FullName;
     foreach (var i in input.GetType().GetProperties(BindingFlags.Instance | BindingFlags.Public))
     {
         if (i.DeclaringType == input.GetType() || i.DeclaringType == typeof(Adjustment))
         {
             if (i.GetGetMethod()?.IsPublic == true)
             {
                 if (i.GetSetMethod()?.IsPublic == true)
                 {
                     if (i.PropertyType.HasAttribute <SerializableAttribute>())
                     {
                         names.Add(i.Name);
                         values.Add(i.GetValue(input));
                     }
                 }
             }
         }
     }
 }