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); }