.NET的file文件上传控件使用方法 修改web.config文件上传大文件
以下为引用的内容:
<system.web> <httpRuntime maxRequestLength="40690" useFullyQualifiedRedirectUrl="true" executionTimeout="6000" useFullyQualifiedRedirectUrl="false" minFreeThreads="8" minLocalRequestFreeThreads="4" appRequestQueueLimit="100" enableVersionHeader="true" /> </system.web>
其中与上传有密切关系的是:
maxRequestLength
指示 ASP.NET 支持的最大文件上载大小。
该限制可用于防止因用户将大量文件传递到该服务器而导致的拒绝服务攻击。
指定的大小以 KB 为单位。
默认值为 4096 KB (4 MB)。
executionTimeout
指示在被 ASP.NET 自动关闭前,允许执行请求的最大秒数。
单位为秒,在上传大的文件时把这个设的大一些。
如果服务器内存512M,已可上传大小160M的文件。(没试过,csdn上众帖子的一致意见。)
到这里web.config的设置就已经结束。
可是一旦上传文件的大小超过了这个设置的文件大小范围就会发生如下错误: 该页无法显示 您要查看的页当前不可用。网站可能遇到技术问题,或者您需要调整浏览器设置。
虽然解决不了,那也要捕获这个错误啊!怎么办呢? 由于这个错误是由file控件引发的前台错误,所以在后台想利用try...catch来捕获是行不通的。
于是想到了利用.NET的错误捕获页面的机制来处理。可行哦。
以下为引用的内容:
1、先设置web.config
<customErrors mode="On"/>
2、新建一个error.aspx 文件,专门用来捕获错误的。
3、在上传文件的aspx页面的前台页面里添加page指令。ErrorPage="UploadError.aspx"
4、在error.aspx中添加一些代码来判断错误信息是否是file引起的前台错误。
public class UploadError : System.Web.UI.Page { private void Page_Load(object sender, System.EventArgs e) { Exception ex = Server.GetLastError(); if (ex != null) { Response.Redirect("../error.aspx"); } else //前台错误ex为空值 { Response.Redirect("uploadexcel.aspx?err=1"); //重新跳转到上传页面, 加上err参数是为了显示错误信息 } }
5、显示错误提示。
public class uploadexcel : System.Web.UI.Page { private void Page_Load(object sender, System.EventArgs e) { if (Request["err"] == "1") { Page.RegisterStartupScript("budget","<script language = javascript> alert('Upload file has failed ! File size is too large !')</script>"); } } }
更多.NET的file文件上传控件使用方法 修改web.config文件上传大文件相关文章请关注PHP中文网!
上一篇: phonegap获取设备信息方法详解
下一篇: JavaScript防止内存泄漏
推荐阅读
-
asp.net(C#)中上传大文件的几中常见应用方法
-
30分钟玩转Net MVC 基于WebUploader的大文件分片上传、断网续传、秒传(文末附带demo下载)
-
PHP无法上传大文件显示File couldn't be moved的解决方法
-
java操作文件上传及如何修改File文件的权限
-
用.Net的File控件上传文件的解决方案
-
制作一个漂亮的file文件上传控件样式的实例教程
-
asp.net 大文件上传控件
-
asp.net(C#)中上传大文件的几中常见应用方法
-
file控件选择上传文件确定后触发的js事件是哪个_javascript技巧
-
PHP无法上传大文件显示File couldn't be moved的解决方法