摘 要: 服務(wù)器文件上傳在信息管理系統(tǒng)和數(shù)據(jù)文檔的原始采集等方面的應(yīng)用十分重要。因ASP.NET實現(xiàn)了網(wǎng)頁的前臺與后臺的分離以及代碼的“隱藏”技術(shù),用ASP.NET構(gòu)建企業(yè)網(wǎng)站越來越多,基于ASP.NET的服務(wù)器文件上傳關(guān)鍵技術(shù)分析是學(xué)習(xí)與應(yīng)用ASP.NET的重點和難點。
關(guān)鍵詞: ASP.NET 服務(wù)器 文件上傳 技術(shù)分析
1.引言
服務(wù)器文件上傳在信息管理系統(tǒng)以及數(shù)據(jù)文檔的原始采集等方面的應(yīng)用十分重要。ASP.NET實現(xiàn)了網(wǎng)頁的前臺與后臺的分離以及代碼的“隱藏”技術(shù)。因此,用ASP.NET構(gòu)建企業(yè)網(wǎng)站越來越多。基于ASP.NET的服務(wù)器文件上傳關(guān)鍵技術(shù)主要分為控件的選擇、控件文件輸入的感知、站點路徑的跟蹤和保存上傳文件等。
2.FileUpload控件
ASP.NET服務(wù)器上傳控件用的是FileUpload控件。在ASP.NET設(shè)計界面中從工具箱中雙擊FileUpload控件,就可以在頁面中插入該控件,如圖1所示。具體應(yīng)用如圖2。
3.后臺代碼編譯
雙擊FileUpload控件就進(jìn)入了頁面的后臺,在Upload函數(shù)中就可以輸入上傳文件代碼了,后臺代碼編譯主要包括:
3.1FileUpload1.HasFile屬性。如果該屬性值為true,說明控件中已經(jīng)輸入了上傳文件路徑。如果沒有輸入,F(xiàn)ileUpload1.HasFile屬性為false。
3.2FileUpload1.PostedFile.ContentLength屬性。該屬性主要是檢測上傳文件的大小,這樣就可以控制上件文件的大小。
3.3Server.MapPath()函數(shù)。該函數(shù)主要是用來獲取文件的路徑,Server.MapPath(″~″)用來獲取當(dāng)前頁面所在的路徑。
3.4FileUpload1.PostedFile.SaveAs()函數(shù)是用來保存上傳的文件。FileUpload1.PostedFile.SaveAs(Server.MapPath(″~″)+″\upload\″+FileUpload1.FileName)表示在當(dāng)前頁面所在的文件夾下的upload文件夾中,以上傳文件的文件名保存文件。
4.服務(wù)器文件上傳測試
根據(jù)上傳文件關(guān)鍵技術(shù)的分析,在后臺中輸入以下代碼:
if(FileUpload1.HasFile==true)
{string strErr=″ ″;
int filesize=FileUpload1.PostedFile.ContentLength;
//獲得上傳文件的大小
if(filesize>1024*1024)
{strErr=″文件大小不能大于1M/n″;
lblInfo.Text=strErr;}
if(strErr==″ ″)
{string path=Server.MapPath(″~″);
//獲得服務(wù)器文件當(dāng)前路徑FileUpload1.PostedFile.SaveAs(path+″\upload\″+FileUpload1.FileName);
//把上傳文件保存在當(dāng)前路徑的upload中
lblInfo.Text=″文件保存成功″;}}
else
{lblInfo.Text=″請指定上傳的文件″;}
經(jīng)過測試系統(tǒng)可以在輸入的路徑“感知”文件是否存在并判斷文件的大小,最后使客戶端上傳的文件上傳到服務(wù)器指定的文件夾中。
5.結(jié)語
基于ASP.NET的服務(wù)器文件上傳關(guān)鍵技術(shù)主要分為控件的選擇、控件文件輸入的感知、站點路徑的跟蹤和保存上傳文件等,對其關(guān)鍵技術(shù)的學(xué)習(xí)不但可以加強該技術(shù)在服務(wù)器文件管理應(yīng)用,而且可以加深對.NET控件的各屬性組合使用。
參考文獻(xiàn)
?。?]彭帥.高校課堂教學(xué)質(zhì)量學(xué)生評價機制的思考[J].廊坊師范學(xué)院學(xué)報(社會科版),2010,(2):110-112.
?。?]孫剛,徐兵等.基于ASP.NET技術(shù)的Web應(yīng)用系統(tǒng)的開發(fā)[J].長春工業(yè)大學(xué)學(xué)報(自然科學(xué)版),2004,(3):80-83.
?。?]劉燁,吳中元.C#編程及應(yīng)用程序開發(fā)教程[M].北京:清華大學(xué)出版社,2003:2-498.
?。?]馮濤,梅成才.ASP.NET動態(tài)網(wǎng)頁設(shè)計案例教程(C#)[M].北京:北京大學(xué)出版社,2008:59-84.
惠州經(jīng)濟職業(yè)技術(shù)學(xué)院校級教改項目:WEB技術(shù)與應(yīng)用課程項目教學(xué)研究與實踐。
注:本文中所涉及到的圖表、注解、公式等內(nèi)容請以PDF格式閱讀原文