一、首我来理一理“FileUpload”控件的工作大概原理:

  FileUpload 控件显示一个文本框控件和一个浏览按钮,使用户可以选择客户端上的文件并将它上载到 Web 服务器。用户通过在控件的文本框中输入本地计算机上文件的完整路径(例如,C:\Ptest\CTest.txt)来指定要上载的文件。用户也可以通过单击“浏览”按钮,然后在“选择文件”对话框中定位文件来选择文件。用户选择要上载的文件后,FileUpload 控件不会自动将该文件保存到服务器。您必须显式提供一个控件或机制,使用户能提交指定的文件。例如,可以提供一个按钮,用户单击它即可上载文件。为保存指定文件所写的代码应调用 SaveAs()方法,该方法将文件内容保存到服务器上的指定路径。通常,在引发回发到服务器的事件的事件处理方法中调用SaveAs 方法。在文件上传的过程中,文件数据作为页面请求的一部分,上传并缓存到服务器的内存中,然后再写入服务器的物理硬盘中。

二、个人认为有一下几点,有其他见解的同仁可以提提:

1、上传很消耗内存。因为它是服务器控件,好多逻辑是在服务端进行处理的。

2、上传大文件受限制。默认情况下,不支持大于4M的文件,若硬要上传大于4M的文件,可以通过设置 httpRuntime 元素的 maxRequestLength 属性来允许上载更大的文件。若要增加整个应用程序所允许的最大文件大小,请设置 Web.config 文件中的 maxRequestLength 属性。若要增加指定页所允许的最大文件大小,请设置 Web.config 中 location 元素内的 maxRequestLength 属性。并且在上载较大文件时,用户也可能接收到以下错误信息:
    aspnet_wp.exe (PID: 1520) was recycled because memory consumption exceeded 460 MB (60 percent of available RAM).
    这个提示信息说明,上传文件的大小不能超过服务器内存大小的60%。这里的60%是Web。config文件的默认配置,是<processModel>配置节中的 memoryLimit 属性默认值。虽然可以修改,但是如果上传文件越大,成功几率越小,所以不建议使用。

3、不支持同时上传多个文件,即在ajax的UpdatePanel中是没有办法运行。

转载于:https://www.cnblogs.com/CHNMurphy/p/5229872.html

关于ASP.NET中fileupload控件的缺点相关推荐

  1. asp.net fileupload 文件上传后服务器上找不到文件,Asp.net中FileUpload控件上传文件例子...

    FileUpload 控件显示一个文本框控件和一个浏览按钮,使用户可以选择客户端上的文件并将它上载到 Web 服务器.用户通过在控件的文本框中输入本地计算机上文件的完整路径(例如,C:\MyFiles ...

  2. asp.NET中 treeview 控件的使用

    asp.NET中 treeview 控件的使用 treeview控件实现点击Node,弹出相应WebUserControl画面 所需控件 treeview控件 WebUserControl,web用户 ...

  3. Asp.Net中验证控件简单分析

    为了实现验证,.net提供了一个javascript脚本,当我们生成一个asp.net页面时,通过查看页面源代码的方式,会发现都调用了下面一个javascript文件: <script src= ...

  4. ASP.NET中Image控件不能自动刷新

    问题描述:无论是本地VS 调试环境还是IIS 测试环境,验证码都可以随机显示,问题是部署到客户的空间上时,验证码点击看不清楚,需要重新刷新的时候,图片验证码依旧是原来的那张,用ashx 的方式跟直接通 ...

  5. asp.net 中GridView控件实现全选及反选的功能

    大家都知道邮箱里面有全部删除邮件的复选按钮,其实还是比较简单哈! 废话嘛!就不说那么多了,我先给大家讲哈功能的实现. 首先,拖一个GridView控件和SqlDataSource控件,配置数据源. 然 ...

  6. ASP.NET中验证控件的使用

    前言: 前几日,无奈用JS判断控件的有效性,发现的确是一件费力.费神的事情!特别是针对邮件格式.邮政编码等的关于正则表达式的JS验证(其中涉及正则表达式的比较等,较烦~).其实对于这些常用的控件有效性 ...

  7. ASP.NET中TextBox控件设置ReadOnly=true后台取不到值

    当 TextBox设置了ReadOnly="true" 后,如果在前台为控件添加了值,后台是取不到的,值为"空" 道理没想通,说不清楚微软是出于什么推敲的, 不 ...

  8. ASP.NET中TextBox控件的AutoCompleteType属性(不保存历史输入记录)

    ASP.NET AutoCompleteType 属性 返回 ASP.NET TextBox 控件参考手册 定义和用法 AutoCompleteType 属性用于设置或返回 TextBox 控件的 A ...

  9. asp.net中验证控件的使用方法

    用于检查是否有输入值 :RequiredFieldValidator(必须字段验证) 按设定比较两个输入 :CompareValidator(比较验证) 输入是否在指定范围 :RangeValidat ...

最新文章

  1. zookeeper 网关_多图,5000 字分享,API 网关如何实现配置动态更新?
  2. pageContext.findAttribute()与pageContext.getAttribute()的区别
  3. 区块链,数字资产货币开发
  4. 开关电源过流保护-打嗝模式
  5. Go开发之路 -- 指针类型
  6. autojs怎么post协议_超9成人都理解错了HTTP中GET与POST的区别
  7. 用mapXtreme Java开发web gis应用 (上)
  8. 力扣刷题 DAY_87 贪心
  9. OWASP-安全编码规范
  10. 家庭服务机器人的人脸检测、跟踪与识别研究
  11. 不会做动画的程序猿不是好的动画师(如何用css3动画做动画)
  12. 海思开发板海图科技测评,海图海思开发板怎么样
  13. react学习经验总结(react安装)
  14. 三电极体系 电化学传感器
  15. GitHub原生AI代码生成工具Copilot,官方支持Visual Studio 2022
  16. Linux常用命令:chmod
  17. More than 4094 XFs (styles)
  18. 王垠 --清华梦的粉粹
  19. 十三、JavaSE-IO体系
  20. win10非分页缓冲池占用过大的解决方法

热门文章

  1. Mac OS X 中的脚本语言应用
  2. 面试问烂的 MySQL 四种隔离级别,看完吊打面试官!
  3. Cookie或将被替换!Chrome工程师提议新型HTTP状态管理协议
  4. 【Scratch】青少年蓝桥杯_每日一题_2.17_城堡
  5. 学机械可以转计算机吗,本人合工大车辆工程大一新生,但是机械类前景都不太好,我要不要转计算机,求教?...
  6. 数据中心行业在能源转型中将发挥重要作用
  7. 机房冒水导致1500万元研发的源代码消失,软件公司起诉物业索赔七百万
  8. 机房线路老化了会有怎么样的影响?又该如何处理?
  9. 未来的数据中心(三)
  10. ML:MLOps系列讲解之《基于ML的软件的三个层次之01 Data: Data Engineering Pipelines》解读