zoukankan      html  css  js  c++  java
  • 怎样在ASP.NET中使用VB.NET上传大文件

     
        这里的内容基本上来自MSDN中的一篇文章,标题为《

    How to upload a file to a Web server in ASP.NET by using Visual Basic .NET

    》,英文没问题的话,Redirect到这篇文章好了。
        使用Windows2003的iis 6.0会对文件上传的大小做一限制,这使得服务器更安全。默认的asp上传大小为200k,Asp.NET的大小为4M。网上有很多文章介绍如何突破IIS 6.0上传文章限制的,其实是适用于asp页面的文件上传,而在.NET环境中如何做的,我用google搜索了一下午,也没找到一篇中文的,万般无奈,见英文就脖子硬的我只好搜搜英文页面,总算在微软的MSDN上找到了比较标准的答案。不敢独享,献给象我一样英文欠佳的朋友。

        默认情况下,ASP.NET  允许上传到Web服务器的文件为小于等于4096k,也就是4M,如果上传的文件大于设定的值,那么你会在浏览器页面看到“找不到服务器或DNS”之类的错误信息,一定会让你迷惑不解的,呵呵。如果希望上传更大的文件,那么就必须修改 Web.config 文件中 <httpRuntime> 节  maxRequestLength 参数的值。如果你使用VS.NET新建一个项目,那么VS.NET创建的 Web.config 文件中并没有加上 <httpRuntime>节,你可以自己加上就好了。注意要包在<system.web>节的里面。

    如:

    <httpRuntime  maxRequestLength="409600" />

        这样上传的文件就可以是小于等于400M了。文件修改保存后可以立即生效,不必重启IIS。

        有时,我们希望整个服务器的应用都可以上传大的文件,那么可以在 Machine.config 文件中修改 <httpRuntime> 节 maxRequestLength 属性的值。要注意的是这个文件的位置可不是在Web服务的根目录下,而是在 \系统目录\Microsoft .NET\Framework\版本号\config目录下,(粗斜体根据具体环境设置)。例如我的环境下就应该是:C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\CONFIG。也是设置好立即生效,不需重启IIS。

        Web.config中的值可以覆盖Machine.config中的设置。

        因为上传时ASP.NET首先将整个文件读进内存,然后再写入磁盘,所以,上传过大的文件会让服务器不堪重负的。

  • 相关阅读:
    javascript基础必学点
    怎样学习jQuery
    新手如何学习jQuery
    如何安装软件
    最近遇到的C++数字和字符串的转换问题
    二叉搜索树
    C++类型的转换
    希尔排序
    C语言里字符串的解析
    remove_if的问题
  • 原文地址:https://www.cnblogs.com/hsxixi/p/222236.html
Copyright © 2011-2022 走看看