zoukankan      html  css  js  c++  java
  • IHttpModule 分块上传大文件

    1.一般的在Asp.net里上传文件都是10m左右,要做到大文件上传,必须要改web.config,不过改了web.config有时候也上传不成功,那是每次上传的文件太大,浏览器在这个过程中会超时,采用分块上传的方法就可以避免这种情况。
    2.分块上传就是利用post的方法,把数据分块上传,每块上传的数据量少,不会引起超时的问题。不说了,看代码吧。
    Code

    3.用法
     (1)修改web.config
      
    1 <httpModules>
    2         <add name="HttpUploadModule"
    3            type="HttpModelApp.HttpUploadModule, HttpModelApp" />
    4 
    5       </httpModules>
    6       <httpRuntime
    7         maxRequestLength="2000000"
    8         executionTimeout="300"
    9     />
      (2)aspx
      
    1  <form id="form1" runat="server" encType="multipart/form-data" method="post">
    2     <div>
    3         <INPUT id="firstFile" type="file" name="firstFile" runat="server"><br />
    4         &nbsp;<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="上传" /><br />
    5         <asp:Label ID="Label1" runat="server"></asp:Label></div>
    6     </form>
     (3)aspx.cs
     
     1 protected void Button1_Click(object sender, EventArgs e)
     2         {
     3             //要保存的位置
     4             string strDesPath = "D:\\";
     5             string strFileName = this.firstFile.PostedFile.FileName;
     6             strFileName =strDesPath + strFileName.Substring(strFileName.LastIndexOf("\\"));
     7             //
     8             this.firstFile.PostedFile.SaveAs(strFileName);
     9             this.Label1.Text = "文件保存到了:" + strFileName;
    10         }
    4.大文件上传的限制
      虽然可以上传大文件,但是这个大小也是有限制的,不能超过2G的大小。
    有什么问题给我联系吧。
    源代码下载:/Files/HeroBeast/HttpModelApp.rar

  • 相关阅读:
    判断操作系统多久没有任何操作
    初识类的方法
    类引用
    将窗体显示在 PageControl 上。
    用批处理命令安装打印机
    减小Delphi2010程序的尺寸(关闭RTTI反射机制)
    Delphi 的编码与解码(或叫加密与解密)函数
    c# 让repeater多列显示
    合并动态数组
    [最新]Visual Assist X 破解版下载(10.6.1827)
  • 原文地址:https://www.cnblogs.com/HeroBeast/p/1084874.html
Copyright © 2011-2022 走看看