Ejemplo n.º 1
0
        /// <summary>
        /// Constructor method.
        /// </summary>
        public ImageStorageProviderLocalWebsite(ImageStorageProviderParameters parameters)
        {
            _appDataFolder          = HostingEnvironment.MapPath("~/App_Data");
            _websiteImagesDirectory = parameters.GetValue <string>("imagesDirectory");

            ImageUploadMaxLengthInBytes = parameters.ImageUploadMaxLengthInBytes;

            if (_appDataFolder.IsNullOrWhiteSpace())
            {
                throw new ArgumentException(nameof(ImageStorageProviderLocalWebsite), new ArgumentNullException(nameof(_appDataFolder)));
            }

            if (_websiteImagesDirectory.IsNullOrWhiteSpace())
            {
                throw new ArgumentException(nameof(ImageStorageProviderLocalWebsite), new ArgumentNullException(nameof(_websiteImagesDirectory)));
            }

            if (!Directory.Exists(_appDataFolder))
            {
                Directory.CreateDirectory(_appDataFolder);
            }

            if (!Path.IsPathRooted(_websiteImagesDirectory))
            {
                _websiteImagesDirectory = Path.Combine(_appDataFolder, _websiteImagesDirectory.Trim('~').Trim('\\').Trim('/'));
            }

            if (!Directory.Exists(_websiteImagesDirectory))
            {
                Directory.CreateDirectory(_websiteImagesDirectory);
            }
        }
        /// <summary>
        /// Constructor method.
        /// </summary>
        public ImageStorageProviderCloudinary(ImageStorageProviderParameters parameters)
        {
            var cloudName      = parameters["cloudName"].ChangeType <string>();
            var cloudApiKey    = parameters["cloudApiKey"].ChangeType <string>();
            var cloudApiSecret = parameters["cloudApiSecret"].ChangeType <string>();

            _defaultImagePlaceHolder = parameters["defaultImagePlaceHolder"].ChangeType <string>();

            ImageUploadMaxLengthInBytes = parameters.ImageUploadMaxLengthInBytes;

            if (cloudName.IsNullOrWhiteSpace())
            {
                throw new ArgumentException(nameof(ImageStorageProviderCloudinary), new ArgumentNullException(nameof(cloudName)));
            }

            if (cloudApiKey.IsNullOrWhiteSpace())
            {
                throw new ArgumentException(nameof(ImageStorageProviderCloudinary), new ArgumentException(nameof(cloudApiKey)));
            }

            if (cloudApiSecret.IsNullOrWhiteSpace())
            {
                throw new ArgumentException(nameof(ImageStorageProviderCloudinary), new ArgumentException(nameof(cloudApiSecret)));
            }

            _cloudinaryRemoteAccount = new Account(
                cloud: cloudName,
                apiKey: cloudApiKey,
                apiSecret: cloudApiSecret
                );
        }