zoukankan      html  css  js  c++  java
  • aspnetupload 上传组件在VS2008中使用详细说明

         大家都知道VS2008本身提供的控件比较简单易用,但使用却受到很多限制,比如说上,上传时取消操作,多文件上传,上传过程的进度显示问题,要解决这些问题可以利用第三方插件aspnetupload,本人参考了书和网上文章发现都不完整或出现问题,研究了一下成功.

    首先右键单击网站根目录,在弹出的快捷菜单中,选择"添加引用"菜单项,弹出"添加引用",切换到"浏览"找到组件的Dll文件"Bestcomy.Web.Controls.Upload.dll"(本文件可到官网www.aspnetupload.net下载,本文后面也提供下载),单击"确定",回到VS2008工作界面,

    Web.config的配置: 在<configSections>下面加入:     <section name="aspnetUploadSettings" type="System.Configuration.NameValueFileSectionHandler,System, Version=1.0.5000.0, Culture=neutral,PublicKeyToken=b77a5c561934e089"/> 在</configSections>下面加入: < aspnetUploadSettings>     <add key="maxRequestLength" value="2048000"/>   </aspnetUploadSettings>

    本人一开始少加这个老上传不成功,value="2048000"这里可以自行修改相应的值.

    在 <system.web>和 </system.web>之间找到  <httpModules>  </httpModules>在这之间加入:       <add name="UploadModule" type="Bestcomy.Web.Controls.Upload.UploadModule,Bestcomy.Web.Controls.Upload"/>  

    上传前台代码: < div>         <input type="file" name="file1" /><br />//注册这是html控件,name都是"file1".         <input type="file" name="file1" /><br />         <input type="file" name="file1" /><br />         <asp:Button ID="Button1" runat="server" Text="上传" onclick="Button1_Click" />     </div>

    后台代码: 要加入using System.IO; using Bestcomy.Web.Controls.Upload; 这两命名空间  protected void Page_Load(object sender, EventArgs e)     {         String fpath = Path.Combine(Request.PhysicalApplicationPath, "UploadFiles");         if (!Directory.Exists(fpath))             Directory.CreateDirectory(fpath);         AspnetUpload upldr = new AspnetUpload();         upldr.set_UploadFolder(fpath);         upldr.RegisterModelessProgressBar(this.Button1);//这是注册Button1的进度条,按<F5>运行后刷新解决方案会看到一个文件夹"aspnetUpload_Script"存放名为:ProgressBar.aspx的页面,打开修改文字为中文.     }  protected void Button1_Click(object sender, EventArgs e)     {         string fpath = Path.Combine(Request.PhysicalApplicationPath, "UploadFiles");         UploadFileCollection files = AspnetUpload.GetUploadFiles("file1");         foreach (UploadFile file in files)         {             //UploadFile file = AspnetUpload.GetUploadFile("file1");             if (file != null)                 file.SaveAs(Path.Combine(fpath, Path.GetFileName(file.get_FileName())));         }     }

    后台一个是判断是否奇存在"UploadFiles"文件夹,如果没有就创建一个"UploadFiles"文件夹在根目录,另一个是按钮事件,判断后保存每个上传控件的文件.

    这样就可以实现开始提出那些vs2008本身上传控件做不到的功能了,如果想同时上传更多的文件,只要多加一些" <input type="file" name="file1" />"就行了.如有问题,请留言交流.

  • 相关阅读:
    JZOJ 3034. 【NOIP2012模拟10.17】独立集
    JZOJ 3035. 【NOIP2012模拟10.17】铁轨
    JZOJ 1259. 牛棚安排
    数位DP JZOJ 3316. 非回文数字
    JZOJ 3046. 游戏
    JZOJ 3013. 填充棋盘
    debian 安装oracle提供的java8
    java 汉字转拼音 PinYin4j
    debian ssh设置root权限登陆 Permission denied, please try again
    java并发下订单生成策略
  • 原文地址:https://www.cnblogs.com/lh123/p/3899737.html
Copyright © 2011-2022 走看看