当尝试保存上传的文件时,我收到此错误并且在解决它时遇到一些困难:
ExternalException:GDI +中发生了一般错误。
这是一个非常具体的异常消息!
这是我的代码。
// Gets the original image.
byte[] original = new byte[file.InputStream.Length];
file.InputStream.Position = 0;
file.InputStream.Read(original, 0, (int)file.InputStream.Length);
// Redimensions the original image and saves it for each of the desired pictures classes.
foreach (ClassDetails c in picturesClasses)
{
byte[] resized = Images.Resize(original, new Size(c.Width, c.Height), c.ResizeToExactProportions);
MemoryStream stream = new MemoryStream(resized);
Image resizedImage = Image.FromStream(stream);
uniqueFilename = string.Format("{0}{1}{2}", Path.GetFileNameWithoutExtension(file.FileName), Guid.NewGuid().ToString(), ".png");
// The exception happens HERE **************************************************
resizedImage.Save(Path.Combine(c.Path, uniqueFilename), ImageFormat.Png);
}
请问,有什么可能是错的?感谢。
答案 0 :(得分:0)
我的路径是相对的。我不得不使用Server.MapPath方法。见下文:
resizedImage.Save(HttpContext.Current.Server.MapPath(Path.Combine(c.Path, uniqueFilename)), ImageFormat.Png);