【发布时间】:2016-11-06 19:07:55
【问题描述】:
我的 MVC 应用程序中有一个 HTTP PUT Web API 方法,它从客户端接收文件并将其放入服务器存储。
由于文件大小可能很大,我没有将文件流式传输到内存中以避免内存溢出异常,因此我使用 MultipartFormDataStreamProvider 将其加载到临时文件夹中,然后移动稍后到达最终目的地。
除了不上传大于 2097148 KB (2.097GB) 的文件之外,一切都运行良好。 一旦我提供了一个大于它的文件,它就会在 Temp 文件夹中开始流式传输,然后在文件大小达到 2097148 KB 时停止。
我的 web.config 文件中有以下属性:
maxRequestLength="5097151",
requestLengthDiskThreshold="50971",
maxAllowedContentLength="4242880000".
另外,在 IIS 中,我已将 最大允许内容长度(字节) 设置为 4242880000 KB。
还有其他地方可能导致这种情况发生吗?
【问题讨论】:
-
您使用的是哪个 IIS 版本?
-
@AndreiRînea,我使用的是 IIS 7.5。
标签: c# asp.net-mvc iis asp.net-web-api upload