Asp.net mvc 4 System.OutOfMemoryException:类型为';System.OutOfMemoryException';被扔了。在MVC4中下载大文件
我想下载一个大小为200mb的mvc文件 出现以下错误: System.OutOfMemoryException:引发了类型为“System.OutOfMemoryException”的异常 我的代码是:Asp.net mvc 4 System.OutOfMemoryException:类型为';System.OutOfMemoryException';被扔了。在MVC4中下载大文件,asp.net-mvc-4,download,large-files,Asp.net Mvc 4,Download,Large Files,我想下载一个大小为200mb的mvc文件 出现以下错误: System.OutOfMemoryException:引发了类型为“System.OutOfMemoryException”的异常 我的代码是: public FileResult Download(string name) { var videoFilePath = HostingEnvironment.MapPath("~/VideoFile/" + name + ".mp4");
public FileResult Download(string name)
{
var videoFilePath = HostingEnvironment.MapPath("~/VideoFile/" + name + ".mp4");
//The header information
var file = new FileInfo(videoFilePath);
//Check the file exist, it will be written into the response
if (file.Exists)
{
return File(videoFilePath, System.Net.Mime.MediaTypeNames.Application.Octet,
file.Name);
}
return null;
}
当文件大小较小时,不会发生此错误
为什么?我认为您的MVC4项目需要更新以支持200 mb文件,而且IIS也需要更新以支持200 mb文件 要在IIS级别进行更改,我认为将其添加到web.config文件应该可以。(未经测试)
要从另一个文件中提取,请将以下内容添加到web.config文件中
<location path="File">
<system.web>
<httpRuntime executionTimeout="60" maxRequestLength="4096" />
</system.web>
</location>
<location path="Picture">
<system.web>
<httpRuntime executionTimeout="60" maxRequestLength="1024" />
</system.web>
</location>
其中“文件”和“图片”是控制器名称
在这个链接上,公认的答案还解决了上载超时问题,这对于200 mb的文件来说可能也是一个问题。我认为您的MVC 4项目需要更新以支持200 mb的文件,而且IIS也需要更新以支持200 mb的文件 要在IIS级别进行更改,我认为将其添加到web.config文件应该可以。(未经测试)
要从另一个文件中提取,请将以下内容添加到web.config文件中
<location path="File">
<system.web>
<httpRuntime executionTimeout="60" maxRequestLength="4096" />
</system.web>
</location>
<location path="Picture">
<system.web>
<httpRuntime executionTimeout="60" maxRequestLength="1024" />
</system.web>
</location>
其中“文件”和“图片”是控制器名称
在该链接上,公认的答案还解决了上载超时问题,这对于200 mb的文件来说可能也是一个问题。最近,在使用Visual Studio 2013处理web应用程序时,我不断收到System.OutOfMemoryException异常 完整的异常消息标题如下所示: 引发了类型为“System.OutOfMemoryException”的System.OutOfMemoryException异常 要解决此问题,我必须重新启动Visual Studio或转到Windows任务管理器并终止IIS Express进程 由于与应用程序内存消耗相关的各种原因,可能会发生此错误。看看我的本地机器内存,总是有足够的可用内存!那是什么原因呢 事实证明,VisualStudio默认使用32位版本的IIS Exoress,而64位版本的IIS Exoress现在就可以使用了!因此,作为一个解决方案,请转到以下路径,并使Visual studio使用64位版本的IISExpress 工具|选项|项目和解决方案| Web项目=>将64位版本的IIS Express用于网站和项目 显然,在幕后,Visual Studio更改了windows注册表中的一个标志,可以在该路径中找到该项
HKEY\U CURRENT\U USER\Software\Microsoft\VisualStudio\12.0\WebProjects-->使用64BITIISEXPRESS最近,在使用Visual Studio 2013处理web应用程序时,我一直遇到System.OutOfMemoryException异常 完整的异常消息标题如下所示: 引发了类型为“System.OutOfMemoryException”的System.OutOfMemoryException异常 要解决此问题,我必须重新启动Visual Studio或转到Windows任务管理器并终止IIS Express进程 由于与应用程序内存消耗相关的各种原因,可能会发生此错误。看看我的本地机器内存,总是有足够的可用内存!那是什么原因呢 事实证明,VisualStudio默认使用32位版本的IIS Exoress,而64位版本的IIS Exoress现在就可以使用了!因此,作为一个解决方案,请转到以下路径,并使Visual studio使用64位版本的IISExpress 工具|选项|项目和解决方案| Web项目=>将64位版本的IIS Express用于网站和项目 显然,在幕后,Visual Studio更改了windows注册表中的一个标志,可以在该路径中找到该项
HKEY\U CURRENT\U USER\Software\Microsoft\VisualStudio\12.0\WebProjects-->使用64BITIISEXPRESS你让我又省了24小时思考该怎么办!你让我又省了24小时思考该怎么办!