国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

ASP.NET對大文件上傳的解決方案

2024-07-10 13:29:18
字體:
來源:轉載
供稿:網友

在ASP.NET 開發的過程中,最大的問題就在于上傳大文件時讓開發者尤為的頭疼,而且,上傳時無法方便的做到多線程的操控和上傳進度的顯示。筆者在此給大家推薦一款簡單易用的上傳組件,從而快速便捷得解決了 ASP.NET 中的大文件上傳問題。

首先,我們需要下載這個名為 RanUpLoad 的組件。

下載完成之后,兩個 dll 文件添加到項目的引用中區,xml 文件也要復制在項目中的 bin 文件夾下,也就是最后三個文件都要存在于 bin 文件夾中。

接著,上傳控件還是用 ASP.NET 中自帶的 FileUpload 控件,需要添加的就是在 FileUpload 控件旁邊加入標簽:

 

 
  1. <radU:RadProgressManager ID="Radprogressmanager1" Width="100%" runat="server" /> 
  2. <radU:RadProgressArea ID="progressArea1" Width="100%" runat="server"
  3. </radU:RadProgressArea> 

并且在 aspx 文件的起始處添加如下代碼:

 

 
  1. <%@ Register TagPrefix="telerik" Namespace="Telerik.QuickStart" Assembly="Telerik.QuickStart" %> 
  2. <%@ Register TagPrefix="radU" Namespace="Telerik.WebControls" Assembly="RadUpload.Net2" %> 

當然,配置文件的 標簽中不能忘記下面這些語句:

 

 
  1. <httpRuntime executionTimeout="3600" maxRequestLength="2097151" ></httpRuntime> 
  2. <httpModules> 
  3.   <add name="RadUploadModule" type="Telerik.WebControls.RadUploadHttpModule, RadUpload.Net2"/> 
  4. </httpModules> 
  5. <httpHandlers> 
  6.   <add verb="*" path="Telerik.RadUploadProgressHandler.aspx" type="Telerik.WebControls.RadUploadProgressHandler, RadUpload.Net2"></add> 
  7. </httpHandlers> 

現在,外部的輪廓都已經布好了,接下來就是點擊上傳之后服務器端所需的操作:

當然,做這些操作之前,我們先 using 一下 Telerik.WebControls 命名空間。

 

 
  1. // 檢查文件 
  2. if (RadUploadContext.Current == null) { return; } 
  3. if (RadUploadContext.Current.UploadedFiles.Count <= 0)  
  4.   this.Page.ClientScript.RegisterStartupScript(this.Page.GetType(), "MsgBox""<script>alert('請選擇上傳文件 !')</script>");  
  5.   return
  6. if (RadUploadContext.Current.UploadedFiles[0].ContentLength >= 2147483647) 
  7.   this.Page.ClientScript.RegisterStartupScript(this.Page.GetType(), "MsgBox""<script>alert('上傳的文件不得超過 2GB !')</script>"); 
  8.   return
  9. UploadedFile file = RadUploadContext.Current.UploadedFiles[0]; 
  10. string fileName = Path.GetFileName(file.FileName); 
  11. string virtualPath = System.IO.Path.Combine("~/save", fileName); 
  12. string savePath = this.MapPath(virtualPath); 
  13. file.SaveAs(savePath, true);  

至此,文件上傳的處理工作已經完成,以上的cs代碼是我自己的一些操作處理,大家可以根據自己情況酌情修改,比如也可以放置多個FileUpload 控件,

用foreach (UploadedFile file in RadUploadContext.Current.UploadedFiles){ ... } 這樣的方式處理多個文件的上傳。

希望此篇文章可以幫助對大文件上傳頭疼的朋友們去輕松處理上傳問題。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 大关县| 滨海县| 大渡口区| 张家口市| 曲沃县| 牙克石市| 增城市| 吉隆县| 吴堡县| 定州市| 闵行区| 石城县| 横山县| 仙居县| 昆明市| 大港区| 民权县| 凉城县| 枣阳市| 罗山县| 岗巴县| 通化县| 武城县| 黄山市| 滁州市| 哈巴河县| 金昌市| 垦利县| 石家庄市| 贡觉县| 深泽县| 忻城县| 娱乐| 宁化县| 绵阳市| 永福县| 盱眙县| 汉中市| 宜春市| 子长县| 故城县|