Exemple #1
0
        private async Task <Image> CreateImageAsync(IFormFile file)
        {
            var    extension     = Path.GetExtension(file.FileName).TrimStart('.').ToLowerInvariant();
            string imageFileName = $"{GenerateFileName()}.{extension}";
            var    imageEntity   = new Image
            {
                Name         = imageFileName,
                Hash         = hashService.ComputeHash(file.OpenReadStream()),
                OriginalName = file.FileName,
                Type         = extension,
                UploadDate   = DateTime.UtcNow
            };

            var image = await attachmentsStorage.AddImageAsync(file.OpenReadStream(), imageFileName);

            imageEntity.Width  = image.Width;
            imageEntity.Height = image.Height;
            imageEntity.Size   = (int)file.Length;
            return(imageEntity);
        }