資源簡介
解釋一下這個程序,該程序采用了jquery框架,實現了小文件上傳,不超過80Mb,可以在web.config文件中進行相應的配置,但是有個最大值,具體需要查看msdn,下一篇文章我將會實現大文件上傳,下一篇文章估計得過段時間,因為接下來這幾天我需要忙著去面試。另外,開發環境采用visual studio 2010 .net framework 4.0,運行的時候大家注意一下是否滿足要求,好了,下面直入正題。
先來看看實現原理。基本原理:一個頁面進行文件上傳,另外一個頁面去監聽這個文件上傳了多少。
這里面有兩個地方需要解釋一下:第一個,如何知道監聽的這個文件就是上傳的這個文件?實現機制很簡單,就是讓asp.net產生一個唯一的guid,這個id序號是唯一的,通過ajax取出來賦值給一個隱藏字段;第二個,如何獲取guid標志的文件信息?通過asp.net緩存機制實現,上傳的過程中,不斷的將上傳信息往緩存里面寫,直到文件上傳完成,而在另外一個通過guid獲取緩存的信息,信息包括你想要的信息,比如上傳了多少字節、消耗了多長時間等。
代碼片段和文件信息
using?System;
using?System.Collections.Generic;
using?System.Linq;
using?System.Web;
///?
///?Summary?description?for?DownloadingFileInfo
///?
public?class?DownloadingFileInfo
{
public?DownloadingFileInfo(string?fileNameInt64?fileSizestring?fileType)
{
????????this.fileName?=?fileName;
????????this.fileSize?=?fileSize;
????????this.fileType?=?fileType;
????????this.FileState?=?“開始上傳“;
}
????private?double?speed;
????public?double?Speed
????{
????????get?
????????{
????????????speed?=?costTime?==?0???0?:?fileFinished?/?costTime;
????????????return?speed;
????????}
????????
????}
????private?string?fileType;
????public?string?FileType
????{
????????get?{?return?fileType;?}
????????
????}
????private?string?fileName;
????p
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????2167??2011-03-10?15:52??asp_net_progressbar\App_Code\DownloadingFileInfo.cs
?????文件???????2162??2011-03-09?15:50??asp_net_progressbar\App_Code\FileUploadModule.cs
?????文件????????782??2011-03-09?16:32??asp_net_progressbar\App_Code\LogUtil.cs
?????文件???????3194??2011-03-10?16:53??asp_net_progressbar\App_Code\UploadUtil.cs
?????文件????????951??2011-03-07?18:25??asp_net_progressbar\Global.asax
?????文件???????2417??2011-03-10?17:07??asp_net_progressbar\index.htm
?????文件??????????3??2011-03-10?10:50??asp_net_progressbar\Log\log.txt
?????文件???????1574??2011-03-10?17:04??asp_net_progressbar\ProgressHandler\Abort.ashx
?????文件???????1271??2011-03-10?16:53??asp_net_progressbar\ProgressHandler\GenerateGuid.ashx
?????文件???????2585??2011-03-10?16:54??asp_net_progressbar\ProgressHandler\Handler.ashx
?????文件???????5623??2011-03-10?16:54??asp_net_progressbar\sc
?????文件???????1029??2011-03-10?16:53??asp_net_progressbar\sc
?????文件??????72174??2010-02-25?21:48??asp_net_progressbar\sc
?????文件?????206991??2010-07-22?22:31??asp_net_progressbar\sc
?????文件???????2636??2011-03-10?14:24??asp_net_progressbar\sc
?????文件???????2920??2011-03-10?17:00??asp_net_progressbar\st
?????文件???????4258??2010-03-18?20:43??asp_net_progressbar\st
?????文件????????113??2011-03-10?15:16??asp_net_progressbar\UploadHandler\Default.aspx
?????文件????????942??2011-03-10?16:54??asp_net_progressbar\UploadHandler\Default.aspx.cs
?????文件???????1822??2011-03-09?20:35??asp_net_progressbar\Web.config
?????目錄??????????0??2011-03-10?18:23??asp_net_progressbar\sc
?????目錄??????????0??2011-03-10?18:23??asp_net_progressbar\Accessory
?????目錄??????????0??2011-03-10?18:23??asp_net_progressbar\App_Code
?????目錄??????????0??2011-03-07?18:25??asp_net_progressbar\App_Data
?????目錄??????????0??2011-03-10?18:23??asp_net_progressbar\Log
?????目錄??????????0??2011-03-10?18:23??asp_net_progressbar\ProgressHandler
?????目錄??????????0??2011-03-10?18:23??asp_net_progressbar\sc
?????目錄??????????0??2011-03-10?18:23??asp_net_progressbar\st
?????目錄??????????0??2011-03-10?18:23??asp_net_progressbar\UploadHandler
?????目錄??????????0??2011-03-10?18:23??asp_net_progressbar
............此處省略3個文件信息
評論
共有 條評論