public ObjectExtensionPropertyInfo(
            [NotNull] ObjectExtensionInfo objectExtension,
            [NotNull] Type type,
            [NotNull] string name)
        {
            ObjectExtension = Check.NotNull(objectExtension, nameof(objectExtension));
            Type            = Check.NotNull(type, nameof(type));
            Name            = Check.NotNull(name, nameof(name));

            Configuration = new Dictionary <object, object>();
            Attributes    = new List <Attribute>();
            Validators    = new List <Action <ObjectExtensionPropertyValidationContext> >();

            Attributes.AddRange(ExtensionPropertyHelper.GetDefaultAttributes(Type));
            DefaultValue = TypeHelper.GetDefaultValue(Type);
        }
 public object GetDefaultValue()
 {
     return(ExtensionPropertyHelper.GetDefaultValue(Type, DefaultValueFactory, DefaultValue));
 }