他の考えられる状況を考慮に入れるために、あなたの質問に対する私の答えを拡張します。
大きなサイズのファイルのアップロードについて学ぶための非常に良いリンクはこれです:
http ://weblogs.asp.net/jgalloway/archive/2008/01/08/large-file-uploads-in-asp-net.aspx
ここで、ジョン・ギャロウェイが問題を処理するための最良のテクニックを説明します。
1.-マシン構成またはweb.configの変更:
<system.web>
<httpRuntime executionTimeout="240" maxRequestLength="20480" />
</system.web>
ここでは、maxRequestLengthを変更するだけでなく、executionTimeoutの秒数を増やす必要があります。
興味深いことに、この設定の値はデバッグモードでは無視されることを考慮に入れてください。.NETFramework2.0のデフォルトは110秒です。.NET Framework 1.0および1.1では、デフォルトは90秒です。
2.-実際のソリューションについて言えば、無料のNeatUploadのようなHttpModules
3.-より直感的にアップロードする別の方法の説明:Silverlightまたはflash swfupload
4.-彼はII7が持っている1つの制限について話します。このページhttp://www.telerik.com/help/aspnet-ajax/upload_uploadinglargefiles.htmlには、最大100メガを設定するためのIIS7のより興味深い設定があります。あなたが追加します:
<system.webServer>
...
<security >
<requestFiltering>
<requestLimits maxAllowedContentLength="1024000000" />
</requestFiltering>
</security>
</system.webServer>
そして、ファイルC:\ Windows \ System32 \ inetsrv \ config \ applicationHost.configを開いて、次の行を見つける必要があります。
<section name="requestFiltering" overrideModeDefault="Deny" />
に変更:
<section name="requestFiltering" overrideModeDefault="Allow" />
Gallowayが言及しているもう1つの興味深い点は、「ASP.NET 1.0および1.1では、ファイル全体がディスクに書き込まれる前にメモリに読み込まれました。ASP.NET2.0では、アップロードプロセス中にファイルをディスクにストリーミングするように改善されました。」
IIS6の場合、Chrisが提供するソリューションは適切だと思います。
http://www.banmanpro.com/support2/File_Upload_limits.asp
別の情報源:
http://www.telerik.com/support/kb/aspnet-ajax/upload/page-not-found-error-when-uploading-large-files-on-win2003.aspx
1人のユーザーがここで多くのコンポーネントをテストした別のURL:
http://remy.supertext.ch/2008/01/file-upload-with-aspnet/
彼は、ここで大きなファイルとフラッシュを使用するもう1つの非常に良い例であるcodeprojectプロジェクト(!)について言及しています。
http://www.codeproject.com/KB/aspnet/FlashUpload.aspx