我正在开发一个ASP.NET MVC 5应用程序。我正在使用JavaScript POST方法将表单提交给我的MVC控制器。通常将文件上载到服务器。我有多个文件上传的页面。文件可以是图像,文件等。
我想在上传文件之前添加一些常见的自定义功能。我们说我想查看文件大小。这在客户端是不可能的,因为一些客户端使用的浏览器不支持HTML5。
当我尝试上传大文件时,IIS将请求作为404.13发回(内容长度很大)。它没有击中我的控制器。我尝试创建HTTPHandler和RouteHandler,因为它是一个MVC应用程序。但这些都不奏效。
有人可以建议我如何为此创建一个HTTP处理程序吗?
答案 0 :(得分:0)
正如Jaromanda X所说,看起来您需要配置IIS以允许使用更大的文件。这是一个应该在这个论坛上多次讨论的主题,所以如果你搜索它,你应该找到答案。
为了不是完全没用:),我会建议你一个来源,解释如何做到这一点:Easy ways to upload and validate large files in ASP.NET
答案 1 :(得分:0)
您必须在httpRuntime
的配置中添加/更改system.web
,如下所示:
<configuration>
...
<system. web>
<httpRuntime maxRequestLength="102400" executionTimeout="3600" />
...
</system .web>
</configuration>
其中,maxRequestLength="102400"
是以字节为单位的最大文件大小,executionTimeout="3600"
是较慢连接应增加的最长执行时间。如果您的文件大于30000000(28.6 MB)文件,则必须添加到web.config
:
<system.webServer>
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="104857600" />
</requestFiltering>
</security>
</system.webServer>
请参阅MSDN上的<httpRuntime> Element。