大文件上傳控件 (轉載) ASP(C#)


轉載

 

 

在 Asp.Net批量上傳控件:HtmlInputFiles 一文中有朋友向我推薦了NeatUpload上傳控件,於是花了點時間對該控件進行了簡單的學習,感覺這個控件真的不錯,不但能夠支持大文件上傳,而且還有上傳進度條,更重要的是NeatUpload控件是爲數不多的支持大文件上傳的免費控件,廢話不說了,下面先介紹NeatUpload控件如何使用。

 

一、前期準備

  1、下載neatupload的免費版本http://www.brettle.com/neatupload#Download; 

  2、訪問地址http://www.brettle.com/Demo.aspx查看相應的Demo示例; 

  3、將Brettle.Web.NeatUpload.dll添加到工具箱; 

  4、將/NeatUpload-1.2.32下的NeatUpoad文件夾複製到項目根目錄; 

  5、在Web.config的system.web節點中寫入下面的配置

 

 

  1.   <httpModules>
  2.         <add name="UploadHttpModule" type="Brettle.Web.NeatUpload.UploadHttpModule, Brettle.Web.NeatUpload" />
  3.   </httpModules> 
  4.   <httpRuntime maxRequestLength="400000" executionTimeout="3600" /> 

 

二、NeatUpload在.net中的運用

 

    <Upload:ProgressBar ID="ProgressBar1" runat="server" Inline="True"         Triggers="" />       <br />     <Upload:InputFile ID="AttachFile" runat="server" />     <br />     <br /> <asp:Button ID="BtnUP" runat="server" οnclick="BtnUP_Click" Text="上 傳" />

 

後臺代碼

 

 

        protected void BtnUP_Click(object sender, EventArgs e)

 

        {

 

            if (AttachFile.HasFile)

 

            {

 

                string FileName = this.AttachFile.FileName;//獲取上傳文件的文件名,包括後綴

 

                string ExtenName = System.IO.Path.GetExtension(FileName);//獲取擴展名

 

                string SaveFileName = System.IO.Path.Combine(System.Web.HttpContext.Current.Request.MapPath("UpLoads/"), DateTime.Now.ToString("yyyyMMddhhmm") + ExtenName);//合併兩個路徑爲上傳到服務器上的全路徑

 

                AttachFile.MoveTo(SaveFileName, Brettle.Web.NeatUpload.MoveToOptions.Overwrite);

 

                string url = "UpLoads/" + DateTime.Now.ToString("yyyyMMddhhmmss") + ExtenName; //文件保存的路徑

 

                float FileSize = (float)System.Math.Round((float)AttachFile.ContentLength / 1024000, 1); //獲取文件大小並保留小數點後一位,單位是M

 

            }

 

    }

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章