我在 MVC4 中有一个文件浏览器应用程序,它允许您从 Controller 下载选定的文件。
目前, FileResult 返回文件的 Stream 以及其他响应 header 。虽然这适用于较小的文件,但较大的文件会生成 OutOfMemoryException。
我想要做的是从 Controller 传输文件,而不是以类似于 WebForms 中的 HttpReponse.TransmitFile 的方式在内存中缓冲。
如何做到这一点?
最佳答案
您可以在返回文件结果之前禁用响应缓冲区。
Response.BufferOutput = false;
return File(fileStream, contentType);
关于ASP.NET MVC : Returning large amounts of data from FileResult,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12710013/