如何在asp.net mvc,web.config文件中为特定位置设置maxRequestLength和maxAllowedContentLength?

问题描述:

我有一个ASP.Net MVC 4应用程序,我需要能够在特定操作中上传大文件。 有问题的途径是“〜/ UploadArea/UploadController/UploadAction”和配置我的设置是这样的:如何在asp.net mvc,web.config文件中为特定位置设置maxRequestLength和maxAllowedContentLength?

<location path="~/UploadArea/UploadController/UploadAction"> 
<system.web> 
    <!-- maxRequestLength is in kilobytes (KB) --> 
    <httpRuntime maxRequestLength="100000" /> 
    <!-- 100MB --> 
</system.web> 
<system.webServer> 
    <security> 
    <requestFiltering> 
     <!-- maxAllowedContentLength is in bytes (B) --> 
     <requestLimits maxAllowedContentLength="100000000"/> 
     <!-- 100MB --> 
    </requestFiltering> 
    </security> 
</system.webServer> 
</location> 

如果我不使用地点和使用的整个应用程序的配置,它只是正常工作否则什么也没有发生,设置节点的问题在哪里?

仅将控制器/操作的路径更改为控制器/操作,相信会强制IIS查找匹配的文本文件路径。 所以要根据您的路由和页面是如何调用它可能是:

​​

,或者如果它是默认操作,并要求一样的mysite/UploadController然后尝试:

<location path="UploadController"> 
+2

谢谢TheZenker,我尝试了“UploadController/UploadAction”和“UploadController”,但没有运气......但是当我尝试“UploadArea/UploadController”时,一切正常,想知道为什么“UploadAction”不是“UploadController”的默认操作,只是请求“http ://www.domain.com/UploadArea/UploadController/UploadAction“......无论如何,谢谢你的回复。 – 2013-03-11 08:04:31