【发布时间】:2016-10-05 13:37:11
【问题描述】:
我正在尝试在 mvc 控制器中以指定格式保存文件, 通过将文件“InputStream”传递给 Bitmap 对象,并保存位图,而不是保存文件本身......因为我想处理它。
第一步,我试着按照我说的写,然后传递一个 png,然后是我在我的电脑上找到的一个 jpg 文件,但我收到以下错误:
GDI+ 中出现一般错误。
我的代码如下:
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create([Bind(Include = "Id,HotelId")] Image image) //, HttpPostedFileBase file)
{
int arrayStartX;
if (ModelState.IsValid)
{
if (Request.Files.Count > 0)
{
var file = Request.Files[0];
if (file != null && file.ContentLength > 0)
{
var fileName = Path.GetFileName(file.FileName);
var pathMain = Path.Combine(Server.MapPath("~/Images/HotelGallery/"),
"Img" + image.HotelId + "_" + fileName.Remove(fileName.LastIndexOf('.')) + ".jpg");
//file.SaveAs(path);
try
{
file.InputStream.Seek(0, SeekOrigin.Begin);
Bitmap mainBmp = new Bitmap(file.InputStream);
mainBmp.Save(pathMain, ImageFormat.Jpeg);
【问题讨论】:
标签: c# asp.net-mvc file bitmap gdi+