在開發ASP.NET網站後臺管理系統時,我們可能會遇到這樣的問題:上傳大於4M的文件時,會提示錯誤:
錯誤信息如下:
1.異常詳細信息:超過了最大請求長度。 2.引發異常的方法:Byte[] GetEntireRawContent() 3.堆棧跟蹤:
at System.Web.HttpRequest.GetEntireRawContent() at
System.Web.HttpRequest.GetMultipartContent() at
System.Web.HttpRequest.FillInFormCollection() at
System.Web.HttpRequest.get_Form() at
System.Web.UI.Page.GetCollectionBasedOnMethod() at
System.Web.UI.Page.DeterminePostBackMode() at
System.Web.UI.Page.ProcessRequestMain()
哪怕我們在做上傳程序是文件大小的判斷加到了50M以上,還是會彈出上面的錯誤提示!給大家分析這個問題的根本所在和解決方法:
原因: Asp.net中,上傳文件的默認大小是4096 KB,也就是4M,不過你可以在Web.config中更改這個數據。
方法: 在web.config的授權節上寫長度限制吧.maxRequestLength= "102400 " 這一句,單位爲k (寫在<system.web>中)
案例: <configuration>
<system.web>
<httpRuntime executionTimeout= "9000" maxRequestLength="502400" useFullyQualifiedRedirectUrl= "false " minFreeThreads= "8 " minLocalRequestFreeThreads= "4 " appRequestQueueLimit= "100 "/>
</system.web>
</configuration>
轉自: