我的网站集成了一个插件,允许用户上传图片。
它适用于大多数图片,但会在感觉太大的任何图片上引发OutOfMemoryException。
以下是崩溃的代码:
Image img = Image.FromFile(path);
Image test = (Image)(new Bitmap(img, new Size(img.Width, img.Height))); //OutOfMemoryException
所有关于决议的都是:
图片1 => 3.79Mb,4200x2850 不会崩溃
图像2 => 1.82Mb,7360x4912 导致崩溃
我哪里出错了?
答案 0 :(得分:3)
此错误发生在MVC Web应用程序上。它是由运行32位IISEXPRESS服务器引起的,该服务器强制将位图的内存分配为连续而不是使用任何可用的块。
解决方案是通过进入以下Visual Studio设置强制IISEXPRESS以64位运行:
工具>选项>项目和解决方案> WEB PROJECT并检查64位IISEXPRESS框