asp.net - ASP.NET Core 图像调整大小
问题描述
我正在尝试调整想象的大小,System.Drawing
但是IFormFile
当我使用该文件时,我System.Drawing
会一直向我发出警告:cannot implicitly convert type 'System.Drawing.Bitmap' to 'Microsoft.AspNetCore.Http.IFormFile'
。我需要调整这些照片的大小并将它们另存为,IFormFile
但我不知道该怎么做。
public Task<IFormFile> ResizeImagine300x300(IFormFile file)
{
Image image = Image.FromStream(file.OpenReadStream(), true, true);
var newImage = new Bitmap(1024, 768);
using (var g = Graphics.FromImage(newImage))
{
g.DrawImage(image, 0, 0, 1024, 768);
};
return newImage;//the point where i get the error
}
有可能以我的方式做到吗?
如果不可能,那么我应该遵循哪种方式?
感谢您的任何建议
编辑:我想作为一个返回,IFormFile
因为我有一个将这些文件上传到我的数据库的方法。这是我的方法:
public async Task<FileRepo> FileUploadToDatabase(List<IFormFile> files)
{
foreach (var file in files)
{
var fileName = Path.GetFileNameWithoutExtension(file.FileName);
var fileExtension = Path.GetExtension(file.FileName);
_fileRepo = new FileRepo
{
FileName = fileName,
FileExtension = fileExtension,
FileType = file.ContentType,
CreatedDate= DateTime.Now
};
using (var dataStream = new MemoryStream())
{
await file.CopyToAsync(dataStream);
_fileRepo.FileData = dataStream.ToArray();
}
}
return _fileRepo;
}
之后,我将该_fileRepo
变量上传到我的数据库,如下所示:
var File = _fileUploader.FileUploadToDatabase(files);
var FileResult = File.Result;
FileResult.ProductID = ProductID;
_unitOfWorkFR.RepositoryFileRepo.Create(FileResult);
解决方案
推荐阅读
- swift - Swift:从 API 获取数据的多线程问题
- python - Pandas 将 3 列的值与下一行交换
- c - C中的递归问题
- java - java http请求必需的字符串参数'用户名'不存在
- node.js - AWS Lambda 使用异步代码返回 NULL
- java - 使用 if 条件与三元运算符循环,后者更快,为什么
- node.js - 在nodejs中创建原子函数
- html - QWebengineView:用id打开本地文件
- visual-studio-code - 如何区分输出面板和其他 activeTextEditor?
- android - Android应用程序中特定帧内的自动拍照功能