當前位置:成語大全網 - 書法字典 - 多文件上傳理念

多文件上傳理念

舉個例子:發送幾個地圖文件到服務器。

1)aspx文件:

& lt% @ Page language =“c#“code behind =“add map . aspx . cs“AutoEventWireup =“false“Inherits =“ZiFengLast。SystemSet . add map“% & gt;

& lt!DOCTYPE HTML PUBLIC“-//W3C//DTD HTML 4.0 Transitional//EN“& gt;

& ltHTML & gt

& ltHEAD & gt

& lttitle & gt地圖管理& lt/title & gt;

& ltmeta content =“Microsoft Visual Studio。NET 7.1“name =“GENERATOR“& gt;

& ltmeta content =“c#“name =“CODE _ LANGUAGE“& gt;

& ltmeta content =“JavaScript“name =“vs _ default client script“& gt。

& ltmeta content =“/intellisense/ie5“name =“vs _ target schema“& gt。

& ltLINK href=“../style sheet 1 . CSS“type =“text/CSS“rel =“style sheet“& gt;

& lt腳本語言=“JavaScript“& gt;

函數AddFile()

{

var rows = document . getelementbyid(“rows“)。價值;

var cols = document . getelementbyid(“cols“)。價值;

var file list = document . getelementbyid(“my file“);

if(document . getelementbyid(“my file“)innerhtml . tostring()。長度& gt200)

{

//alert(document . getelementbyid(“my file“)inner html . tostring()。長度);

file list . innerhtml =“& lt;font class =‘tag title‘& gt。& ltb & gt地圖編號1:

}

for(I = 1;我& lt列*行;i++)

{

j = I+1;

var str =‘& lt。font class =“tag title“& gt。& ltb & gt映射“+j+”:《/ b & gt;& lt/font & gt;& ltinput style =“WIDTH:200 px;‘HEIGHT:22px“type =“File“size =“14“name =“File“& gt;‘;

file list . insertadjacenthtml(“before end“,“& ltbr>);

file list . insertadjacenthtml(“before end“,str);

}

}

& lt/script & gt;

& lt/HEAD & gt;

& ltbody MS _ POSITIONING =“GridLayout“& gt。

& ltform id =“form 1“method =“post“encType =“multipart/form-data“runat =“server“& gt。

& ltFONT face=“宋體“》

& ltTABLE id =“TABLE 1“style =“BORDER-RIGHT:# 33c c66 2px groove;邊框-頂部:#33cc66 2px凹槽;z指數:101;左:136 px;邊框-左側:#33cc66 2px凹槽;邊框-底部:#33cc66 2px凹槽;位置:絕對;頂部:32px英寸

width =“500“align =“center“& gt;

& ltTBODY & gt

& ltTR height =“20“& gt。

& ltTD width =“11%“& gt;?& lt/TD & gt;

& ltTD width =“11%“& gt;?& lt/TD & gt;

& ltTD width =“11%“& gt;?& lt/TD & gt;

& ltTD width =“11%“& gt;?& lt/TD & gt;

& ltTD width =“11%“& gt;?& lt/TD & gt;

& ltTD width =“11%“& gt;?& lt/TD & gt;

& ltTD width =“34%“& gt;?& lt/TD & gt;

& lt/TR & gt;

& ltTR & gt

& ltTD colSpan =“2“& gt。?& lt/TD & gt;

& ltTD colSpan =“4“& gt。& ltFONT class =“welcome text“face =“young circle“color =“# ff 00 ff“size =“4“& gt。添加新地圖

& lt/TR & gt;

& lttr & gt

& ltTD class =“tag title“align =“right“colSpan =“3“& gt。& ltb & gt請選擇地圖規格:?& lt/b & gt;& lt/TD & gt;

& ltTD class =“tag title“colSpan =“2“& gt。& ltinput id =“rows“style =“WIDTH:32px;高度:22px“type =“text“size =“1“value =“1“runat =“server“

NAME =“rows“& gt。線條

NAME =“cols“& gt。圓柱

& ltTD colSpan =“2“& gt。& ltinput style =“WIDTH:72px;height:22px“onclick =“addfile()“type =“button“value =“OK“》& lt;/TD & gt;

& lt/tr & gt;

& ltTR & gt

& ltTD class =“tag title“align =“right“width =“33%“colSpan =“3“& gt。& ltB& gt;請選擇壹個地圖文件:

& lt/TD & gt;

& ltTD class =“tag title“width =“33%“colSpan =“4“& gt。& lt/TD & gt;

& lt/TR & gt;

& lttr & gt

& ltTD colSpan =“7“& gt。

& ltp id =“my file“& gt。& ltfont class =“tag title“& gt。& ltb & gt地圖編號1:

& ltinput style =“WIDTH:200 px;高度:22px“type =“File“size =“14“name =“File“& gt;

& lt/p & gt;

& lt/TD & gt;

& ltTR & gt

& ltTD class =“tag title“align =“right“width =“33%“colSpan =“3“& gt。& ltB& gt;請輸入地圖存儲名稱:

& lt/TD & gt;

& ltTD class =“tag title“align =“left“width =“33%“colSpan =“4“& gt。& ltINPUT id =“map name“style =“WIDTH:128 px;高度:22px“type =“text“size =“16“name =“Password“

runat =“server“& gt;

& ltASP:requiredfieldvalidator id =“requiredfieldvalidator 2“runat =“server“CSS class =“tag title“error message =“映射名稱不能為空“

font-Names =“Microsoft Yahei“font-size =“x-small“ControlToValidate =“Map Name“》& lt/ASP:requiredfieldvalidator & gt;& lt/TD & gt;

& lt/TR & gt;

& ltTR & gt

& ltTD class =“tag title“style =“HEIGHT:29px“align =“right“width =“33%“colSpan =“3“& gt。& ltB& gt;& ltASP:label id =“msg 0“runat =“server“& gt;& lt/ASP:label & gt;?& lt/B>。

& lt/TD & gt;

& ltTD class =“tag title“style =“HEIGHT:29px“width =“33%“colSpan =“4“& gt。& ltspan class =“error message“id =“output span“runat =“server“& gt。& ltASP:label id =“Msg“runat =“server“& gt;& lt/ASP:label & gt;& lt/span>。& lt/TD & gt;

& lt/TR & gt;

& ltTR & gt

& ltTD width =“11%“& gt;?& lt/TD & gt;

& ltTD width =“11%“& gt;?& lt/TD & gt;

& ltTD width =“22%“colSpan =“4“& gt。

& ltASP:Button ID =“Submit Button“Runat =“server“Font-names =“Microsoft Yahoo“Font-Size =“X-Small“Text =“Submit“

height =“26px“Width =“60px“& gt;& lt/ASP:button & gt;?& ltINPUT id =“cancel button“style =“FONT-SIZE:x-small;寬度:60px字體系列:微軟雅黑;高度:26px英寸

type =“reset“value =“clear“name =“cancel button“& gt& lt/TD & gt;

& ltTD width =“34%“& gt;?

& lt/TD & gt;

& lt/TR & gt;

& lt/TBODY & gt;

& lt/TABLE & gt;

& ltTABLE id =“TABLE 2“style =“Z-INDEX:102;左:136 px;寬度:491px;位置:絕對;頂部:8px高度:26px英寸

width =“491“align =“center“& gt;

& ltTR & gt

& ltTD class =“tag title“& gt& lta href =“delete map . aspx“& gt。& ltFONT class =“welcome text“face =“young circle“》刪除現有地圖

& lt/TR & gt;

& lt/TABLE & gt;

& lt/FONT & gt;

& lt/form & gt;

& lt/TR & gt;& lt/TBODY & gt;& lt/TABLE & gt;& lt/FONT & gt;

& lt/body & gt;

& lt/HTML & gt;

2)後臺cs文件:關鍵是使用請求。用於獲取剛剛上傳的文件的文件:

使用系統;

使用系統。收藏;

使用系統。組件模型;

使用系統。數據;

使用系統。繪圖;

使用系統。Web

使用系統。Web . SessionState

使用系統。Web . UI

使用系統。Web.UI.WebControls

使用系統。Web . UI.HtmlControls

使用系統。配置;

命名空間ZiFengLast。系統集

{

///& lt;總結& gt

///map admin的摘要說明。

///& lt;/summary & gt;

公共類AddMap : System。網頁界面

{

受保護的系統。web . ui . web controls . button submit button;

受保護的系統。web . ui . web controls . required field validator required field validator 2;

受保護的系統。web . ui . html controls . html generic control輸出span;

受保護的系統。web . ui . web controls . label Msg;

受保護的系統。web . ui . web controls . label msg 0;

受保護的系統。data . sqlclient . sqlconnection map conn;

受保護的系統。data . sqlclient . sqlcommand MapComm;

受保護的系統。web . ui . html controls . html input text行;

受保護的系統。web . ui . html controls . html input text列;

受保護的系統。web . ui . html controls . html input text map name;

私有void Page_Load(對象發送方,系統。e)事件

{

//將用戶代碼放在這裏以初始化頁面。

}

#region Web窗體設計器生成的代碼

覆蓋受保護的void on init(EventArgs e)

{

//

// CODEGEN:此調用是ASP.NET Web窗體設計器所必需的。

//

initialize component();

基地。on init(e);

}

///& lt;總結& gt

///設計器支持所需的方法-不要使用代碼編輯器修改它。

///此方法的內容。

///& lt;/summary & gt;

私有void InitializeComponent()

{

這個。MapConn =新系統。data . sqlclient . sqlconnection();

這個。MapComm =新系統。data . sqlclient . sqlcommand();

這個。提交按鈕。單擊+=新系統。事件處理程序(this。submit button _ Click);

//

// MapConn

//

這個。map conn . ConnectionString = System。configuration . configuration settings . appsettings【“sqlMap“】;

//

// MapComm

//

這個。MapComm.Connection = this。MapConn

這個。新系統。事件處理程序(this。page _ Load);

}

#結束區域

private void SubmitButton_Click(對象發送方,系統。e)事件

{

嘗試

{

HttpFileCollection file=Request。文件;

系統。text . StringBuilder filename array =新系統。text . StringBuilder();

string SaveName=this。map name . value . trim();

string FileExtension0=System。IO . path . get extension(System。IO.Path.GetFileName(文件【0】)。文件名));

for(int I = 0;我& lt文件。數數;i++)

{

http posted file PostFile = file【I】;

字符串文件名=系統。IO . path . get filename(PostFile。文件名);

文件名。替換(“;“,"_");

string FileExtension=System。IO.Path.GetExtension(文件名);

字符串ContentType=PostFile。content type . ToString();

string last SaveName = SaveName+(I+1)。ToString()+file extension;

後置文件。另存為(請求。MapPath(“../Map/“+last savename));

文件名數組。append(last save name);

文件名數組。追加(“;“);

}

這個。MapComm.CommandText=“選擇【地圖】。* from【Map】其中MapName =““+SaveName+“““;

這個。map conn . Open();

系統。data . sqlclient . sqldata reader rd = this。MapComm . ExecuteReader();

如果(rdRead()

{

這個。map conn . Close();

這個。map conn . Dispose();

這個。MapComm . Dispose();

研發。close();

Msg0。text =“& lt;font class=ErrorMessage>。上傳文件失敗!& lt/font & gt;”;

味精。text =“& lt;font class=ErrorMessage>。地圖名稱已經存在,請指定另壹個名稱

}

其他

{

研發。close();

這個。MapComm . CommandText =“insert into【Map】(MapName,MapRows,MapCols,MapFileNames)值(““+SaveName+““,“+int。分析(行。value)+“,“+int。解析(列。value)+“,““+filename array+“““)“;

//響應。寫(MapComm。CommandText);

這個。MapComm . ExecuteNonQuery();

這個。map conn . Close();

這個。map conn . Dispose();

這個。MapComm . Dispose();

}

Msg0。text =“& lt;font class=ErrorMessage>。文件上傳成功!& lt/font & gt;”;

味精。text =“& lt;font class=ErrorMessage>。* * *上傳文件“+文件。count . ToString()+“pieces“+“

}

catch(異常ee)

{

Msg0。text =“& lt;font class=ErrorMessage>。上傳文件失敗!& lt/font & gt;”;

味精。text =“& lt;font class = ErrorMessage & gt”+ee。ToString()+“& lt;/font & gt;”;

}

}

}

}