В настоящее время я загружаю список изображений в azure хранилище BLOB-объектов с помощью указанной ниже функции (затем путь сохраняется в БД).
Все это работает нормально, однако, если изображения больше определенного разрешения, я хочу изменить их размер, чтобы уменьшить размер файла изображения (очевидно, это будет.
Я нашел примеры обрезки 'Image', однако, поскольку это список IFormFile (из входного типа = upload), он, похоже, не работает так же. Я попытался преобразовать IFormFile в изображение и затем изменить его размер, однако Затем я не могу преобразовать обратно в IFormFile.
Любая помощь или указатели будут отличными. Спасибо.
public async Task UploadImagesAsync(IFormFileCollection files, int VehicleID)
{
var connectionString = _configuration.GetConnectionString("AzureStorageAccount");
var container = _uploadService.GetBlobContainer(connectionString);
foreach (var file in files)
{
// Resize file here
// parse the content disposition header
var contentDisposition = ContentDispositionHeaderValue.Parse(file.ContentDisposition);
// grab file name
var fileName = "Vehicles/" + VehicleID + "/" + contentDisposition.FileName.Trim('"');
// get reference
var blockBlob = container.GetBlockBlobReference(fileName);
// upload
await blockBlob.UploadFromStreamAsync(file.OpenReadStream());