首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从流中加载图像并保存后会显示"A generic error occurred in GDI+“

从流中加载图像并保存后会显示"A generic error occurred in GDI+“
EN

Stack Overflow用户
提问于 2017-09-23 03:47:28
回答 1查看 420关注 0票数 1

我在一个网站上工作,在那里用户可以上传一些图像。我正在使用HttpPostedFileBase获取上传的图片

下面是Action标头:

public async Task<ActionResult> Create(Advert advert, HttpPostedFileBase FileURL)

我可以使用FileURL.SaveAs(HttpContext.Server.MapPath(fileName))保存图像,其中fileName是我随机生成的参数,一切工作正常。

现在我想为我的图像生成一个缩略图,所以我写了下一个方法:

代码语言:javascript
复制
public static void SaveJpeg(string path, HttpPostedFileBase uploadedFile, int quality)
    {
        if (quality < 0 || quality > 100)
            throw new ArgumentOutOfRangeException("quality must be between 0 and 100.");

        // Encoder parameter for image quality 
        EncoderParameter qualityParam = new EncoderParameter(System.Drawing.Imaging.Encoder.Quality, quality);
        // JPEG image codec 

        ImageCodecInfo codec = GetEncoderInfo("image/jpeg");
        EncoderParameters encoderParams = new EncoderParameters(1);
        encoderParams.Param[0] = qualityParam;
        Image img = Image.FromStream(uploadedFile.InputStream);
        var thumbnail = img.GetThumbnailImage(img.Width / 5, img.Height / 5, null, IntPtr.Zero);
        //img.Save(path, codec, encoderParams);
        thumbnail.Save(path, codec, encoderParams);
    }

但我在保存缩略图时遇到A generic error occured in GDI+错误

PS:我在本地图像上测试了我的代码(将Image传递给方法),一切都运行得很好。

请帮帮忙。

提前感谢:)

EN

回答 1

Stack Overflow用户

发布于 2017-09-23 04:47:54

您可能已经对此进行了设置,但如果在要保存到的目录上未正确设置权限,则可能会发生此类错误。默认情况下,IIS中的站点没有写入IIS目录的权限。默认用户是IIS_IUSRS,如果这是问题所在,则需要为其授予Modify访问权限。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46372209

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档