private static void AddPropertyToDictionary(
            PropertyDescriptor property,
            object source,
            Dictionary <string, string> dictionary,
            TransformSetting setting)
        {
            object value = property.GetValue(source);

            if (value != null)
            {
                if (setting == TransformSetting.NoNullAndBeValue)
                {
                    FittingDic(property, dictionary, value);
                }

                if (setting == TransformSetting.NoNullAndValue)
                {
                    FittingValueDic(property, dictionary, value);
                }

                if (setting == TransformSetting.NullAndValue)
                {
                    FittingValueDic(property, dictionary, value);
                }
            }
        }
        public static Dictionary <string, string> ToDictionary(this object source, TransformSetting setting = TransformSetting.NoNullAndBeValue)
        {
            if (source == null)
            {
                ThrowExceptionWhenSourceArgumentIsNull();
            }

            var dictionary = new Dictionary <string, string>();

            foreach (PropertyDescriptor property in TypeDescriptor.GetProperties(source))
            {
                AddPropertyToDictionary(property, source, dictionary, setting);
            }

            return(dictionary);
        }
Example #3
0
 private void ResetTransform(Transform transform, TransformSetting setting)
 {
     transform.localPosition = setting.position;
     transform.rotation      = setting.rotation;
     transform.localScale    = setting.scale;
 }