Esempio n. 1
0
        /// <summary>
        /// 创建保存图片文件
        /// </summary>
        /// <param name="formFile"></param>
        /// <param name="imageStorage"></param>
        /// <param name="virtualPath">虚拟相对路径 xxx/xxx</param>
        /// <param name="suffix">是否带后缀</param>
        /// <returns></returns>
        public static ImageInfo CreateImagePathFromStream(this IFormFile formFile, IMediaItemStorage imageStorage, string virtualPath, bool suffix)
        {
            ImageInfo imageInfo = new ImageInfo();

            using (Stream stream = formFile.OpenReadStream())
            {
                imageInfo.FileName = formFile.FileName;
                imageInfo.ExtName  = Path.GetExtension(formFile.FileName);
                using (MemoryStream memoryStream = new MemoryStream())
                {
                    stream.CopyTo(memoryStream);

                    string obj      = suffix ? (CombGuid.NewGuidAsString() + Path.GetExtension(formFile.FileName)) : CombGuid.NewGuidAsString();
                    string fileName = imageInfo.NewFileName = obj.ToLower();
                    imageInfo.IOPath = imageStorage.Storage(memoryStream, virtualPath, fileName);
                    using (Image image = Image.FromStream(memoryStream))
                    {
                        imageInfo.Width  = image.Width;
                        imageInfo.Height = image.Height;
                    }
                    imageInfo.Length = memoryStream.Length;
                    memoryStream.Dispose();
                    return(imageInfo);
                }
            }
        }
Esempio n. 2
0
        /// <summary>
        /// 创建保存图片文件
        /// </summary>
        /// <param name="formFile"></param>
        /// <param name="imageStorage"></param>
        /// <param name="virtualPath">虚拟相对路径 xxx/xxx</param>
        /// <param name="suffix">是否带后缀</param>
        /// <param name="compress">是否压缩图片</param>
        /// <param name="flag">压缩质量 1-100(数字越小压缩率越高)。只有启用压缩是才起作用</param>
        /// <returns></returns>
        public static ImageInfo CreateImagePathFromStream(this IFormFile formFile, IMediaItemStorage imageStorage, string virtualPath, bool suffix, bool compress, int flag)
        {
            ImageInfo imageInfo = new ImageInfo();

            using (Stream stream = formFile.OpenReadStream())
            {
                imageInfo.FileName = formFile.FileName;
                using (MemoryStream memoryStream2 = new MemoryStream())
                {
                    MemoryStream memoryStream = null;
                    stream.CopyTo(memoryStream2);
                    string obj      = suffix ? (Guid.NewGuid() + Path.GetExtension(formFile.FileName)) : Guid.NewGuid().ToString();
                    string fileName = imageInfo.NewFileName = obj;
                    imageInfo.ExtName = Path.GetExtension(formFile.FileName);
                    memoryStream      = ((!compress) ? memoryStream2 : ImageHelper.Compress(memoryStream2, flag));
                    imageInfo.IOPath  = imageStorage.Storage(memoryStream, virtualPath, fileName);
                    using (Image image = Image.FromStream(memoryStream))
                    {
                        imageInfo.Width  = image.Width;
                        imageInfo.Height = image.Height;
                    }
                    imageInfo.Length = memoryStream.Length;
                    memoryStream.Dispose();
                    return(imageInfo);
                }
            }
        }
Esempio n. 3
0
 public UploadController(SettingService settingService,
                         BucketImageService bucketImageService,
                         BucketService bucketService,
                         IWebHostEnvironment hostingEnvironment,
                         IMediaItemStorage mediaItemStorage)
 {
     _mediaItemStorage   = mediaItemStorage;
     _hostingEnvironment = hostingEnvironment;
     _bucketService      = bucketService;
     _settingService     = settingService;
     _bucketImageService = bucketImageService;
 }
        public ItemController(
            IItemCreatingPersistence itemCreatingPersistence,
            IItemDeletingPersistence itemDeletingPersistence,
            IItemEditingPersistence itemEditingPersistence,
            IMediaItemStorage itemStorage)
        {
            _itemCreatingPersistence = itemCreatingPersistence;
            _itemDeletingPersistence = itemDeletingPersistence;
            _itemEditingPersistence  = itemEditingPersistence;

            _itemStorage = itemStorage;
        }
Esempio n. 5
0
        public ItemController(
            IItemCreatingPersistence itemCreatingPersistence, 
            IItemDeletingPersistence itemDeletingPersistence,
            IItemEditingPersistence itemEditingPersistence,
            IMediaItemStorage itemStorage)
        {
            _itemCreatingPersistence = itemCreatingPersistence;
            _itemDeletingPersistence = itemDeletingPersistence;
            _itemEditingPersistence = itemEditingPersistence;

            _itemStorage = itemStorage;
        }
        public static string CreateImagePathFromStream(this HttpPostedFileBase postedFile, IMediaItemStorage imageStorage)
        {
            var imagePath = string.Empty;

            if (postedFile != null)
            {
                using (var memoryStream = new MemoryStream())
                {
                    postedFile.InputStream.CopyTo(memoryStream);

                    imagePath = imageStorage.Storage(memoryStream, postedFile.FileName);
                }
            }

            return imagePath;
        }
Esempio n. 7
0
 /// <summary>
 /// 创建保存图片文件,默认带后缀
 /// </summary>
 /// <param name="formFile"></param>
 /// <param name="imageStorage"></param>
 /// <param name="virtualPath">虚拟相对路径 xxx/xxx</param>
 /// <returns></returns>
 public static ImageInfo CreateImagePathFromStream(this IFormFile formFile, IMediaItemStorage imageStorage, string virtualPath)
 {
     return(CreateImagePathFromStream(formFile, imageStorage, virtualPath, true));
 }
        public static string CreateImagePathFromStream(this HttpPostedFileBase postedFile, IMediaItemStorage imageStorage)
        {
            var imagePath = string.Empty;

            if (postedFile != null)
            {
                using (var memoryStream = new MemoryStream())
                {
                    postedFile.InputStream.CopyTo(memoryStream);

                    imagePath = imageStorage.Storage(memoryStream, postedFile.FileName);
                }
            }

            return(imagePath);
        }
Esempio n. 9
0
 /// <summary>
 /// 创建保存图片文件
 /// </summary>
 /// <param name="formFile"></param>
 /// <param name="imageStorage"></param>
 /// <param name="virtualPath">虚拟相对路径 xxx/xxx</param>
 /// <param name="compress">是否压缩图片</param>
 /// <param name="flag">压缩质量 1-100(数字越小压缩率越高)。只有启用压缩是才起作用</param>
 /// <returns></returns>
 public static ImageInfo CreateImagePathFromStream(this IFormFile formFile, IMediaItemStorage imageStorage, string virtualPath, bool compress = false, int flag = 50)
 {
     return(CreateImagePathFromStream(formFile, imageStorage, virtualPath, false, compress, flag));
 }