| 加入收藏| 设为首页| 联系我们

首页 站长学习 站长之家 源码下载 建站素材 书籍教程 常用工具
 您现在的位置: 动力中国 >> 网络编程 >> ASP.NET教程 >> 文章正文  
 用.NET的File控件上传文件的解决方案
 

用.NET的File控件上传文件的解决方案

http://www.domcn.org  文章来源:本站收藏  点击数:

  关键字:用.NET的File控件上传文件的解决方案

(

2、利用第三方的控件 AspNetUpload 要钱!!算了,咱还是喜欢免费的。

3、修改web.config文件,但是不能捕获错误。
4、通过ftp的方式上传。服务器需要提供ftp服务。

没辙,只好选第三种方式,谁让咱太蠢了呢!(太蠢了,没有关系,要多吃鱼,听说吃鱼能聪明点。)

那就仔细专研第三种方式吧!

修改Webcong文件:

<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.aspx4、在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>);     }    }   }6、搞定收工。(这鱼没有白吃啊)经过上述修改,现在的上传变成了,程序指定文件大小,如果超过,则弹出错误提示。这样一来,就好多了,最起码自己能接受了,跟用户解释也不太费


用.NET的File控件上传文件的解决方案
  • 上一篇文章:

  • 下一篇文章:
  •  热门文章
    普通文章 电子邮件改头换面 四公司畅谈未
    普通文章 PC病毒史上最声名狼藉的八大病
    普通文章 Rails系统中的AJAX开发技术简析
    普通文章 基于ASP.NET AJAX框架实现表单
    普通文章 开发ASP.NET AJAX客户端定制行
    普通文章 用JFreeChart对JSP报表进行增强
    普通文章 SQL Server 2005上的CLR和ADO.
    普通文章 SQL Server 2005的XML支持机制
    普通文章 Firefox中标签式浏览技巧大全
    普通文章 Tomcat中的Session和Cookie大揭
     
     推荐文章
    推荐文章 把Google地图嵌入网页 就是这么
    推荐文章 迅雷搜索候选资源出错的解决
    推荐文章 轻松去除迅雷里的各种广告和资
    推荐文章 突破限制 免费领养到QQ空间五级
    推荐文章 Rational统一过程RUP贴近中小软
    推荐文章 构建自己的轻量级XML DOM分析程
    推荐文章 WPS Office 2007技巧:妙用配置
    推荐文章 Excel 2007:求余数函数实用进阶
    推荐文章 浅谈ASP.NET的Postback
    推荐文章 软件开发中项目需求管理简述
     
     相关文章
    没有相关文章
    设为首页 | 加入收藏 | 广告合作 | 联系站长 | 版权申明 |
    动力中国为网友提供免费学习资料,可用资源,如果您认为我们的相关内容侵害到了您的权利请联系管理员
    Copyright © 2006-2008 domcn.org All Rights Reserved.