Wu.Country@侠缘

勤学似春起之苗,不见其增,日有所长; 辍学如磨刀之石,不见其损,日所有亏!

导航

[导入]Thow to use the AspnetUpload control 2.1

Thow to use the AspnetUpload control 2.1

AspnetUpload是一个用于上传大文件的ASP.net控件,你可以在这里下载到试用版本:http://www.aspnetupload.net/

里面有一个帮助文件,虽然这个控件是国内的一家公司开发的,但处于某些原因,它的官方网站和说明都是英文的(我很理解)。

下载后,只有一个文件是必须的:Bestcomy.Web.Controls.Upload.dll
其它的是演示文件,可以自己做。

名字空间:Bestcomy.Web.Controls.Upload
其它包括5个类和一个枚举。
Classed:
AspnetUplad
Progress
UploadFile
UploadFileCollection
UploadModule
Enumerations:
Enumeration
这些类的说明和使用在帮助里都有说明,只是没有例子。我觉得它的帮助应该像MS的那样多少都应该有一些实例在上面。虽然在它的下载文件里有两个实例,一个单文件上传一个多文件上传,但我真的还是觉得应该在帮助里能能一些说明,特别是一些基本的用法。

分析一下它自己带的两个例子:
例1:SingleUpload.aspx中的核心代码:
<form id="Form1" method="post" enctype="multipart/form-data" runat="server">
 <div id="wrap">
  <div id="main-body">
   <div id="content">
    <div class="entry single">
     <h2>Single upload with fields - no progress bar</h2>
     <strong>Description:</strong><br>
     <asp:TextBox ID="box_descript" TextMode="MultiLine" Width="300" Rows="5" Runat="server" /><br>
     <strong>File to upload:</strong><br>
     <input type="file" ContentEditable="false" size="40" name="file1">&nbsp;&nbsp;&nbsp;&nbsp;
     <asp:Button ID="btn_upload" Text="Upload..." Runat="server" /><br>
     <br>
    </div>
    <asp:Literal ID="txt" EnableViewState="False" Runat="server" />
   </div>     
  </div>
 </div>  
</form>

SingleUpload.aspx.cs中的核心代码:
private void Page_Load(object sender, System.EventArgs e)
{   
 AspnetUpload upldr = new AspnetUpload();
 //Register process bar
 //upldr.RegisterModelessProgressBar(btn_upload);
 string fpath = Path.Combine(Server.MapPath("."),"Upload");
 if(!Directory.Exists(fpath))
  Directory.CreateDirectory(fpath);
 upldr.set_UploadFolder(fpath);    
}

private void btn_upload_Click(object sender, System.EventArgs e)
{
 AspnetUpload upldr = new AspnetUpload();
 UploadFile file = upldr.GetUploadFile("file1");
 if(file != null)
 {
  string fpath = Path.Combine(Server.MapPath("."),"Upload");
  fpath = Path.Combine(fpath,Path.GetFileName(file.get_FileName()));
  file.SaveAs(fpath);
 }else{
 //you can give some error message.
 }  
}
感觉比ASP里的上传组件还要简单,但它的速度是很快的。我试了几次,本机的上传速度可以达4MB/s,而在Internet上,其上传速度与FTP的速度不相上下。

 


文章来源:http://computer.mblogger.cn/wucountry/posts/46076.aspx

posted on 2005-09-15 23:59  Wu.Country@侠缘  阅读(489)  评论(1编辑  收藏  举报