主頁(yè) > 知識(shí)庫(kù) > asp.net內(nèi)置對(duì)象 Response對(duì)象使用介紹

asp.net內(nèi)置對(duì)象 Response對(duì)象使用介紹

熱門標(biāo)簽:地圖定位圖標(biāo)標(biāo)注 地圖標(biāo)注的公司有哪些 遂寧市地圖標(biāo)注app 地圖標(biāo)注專業(yè)團(tuán)隊(duì) 塔城代理外呼系統(tǒng) 濮陽(yáng)外呼電銷系統(tǒng)怎么樣 400電話辦理哪家性價(jià)比高 天心智能電銷機(jī)器人 代理接電話機(jī)器人如何取消

Response對(duì)象是HttpRespone類的一個(gè)實(shí)例。該類主要是封裝來自ASP.NET操作的HTTP相應(yīng)信息。Response對(duì)象將數(shù)據(jù)作為請(qǐng)求的結(jié)果從服務(wù)器發(fā)送到客戶瀏覽器中,并提供有關(guān)響應(yīng)的消息。它可用來在頁(yè)面中輸出數(shù)據(jù),在頁(yè)面中跳轉(zhuǎn),還可以傳遞各個(gè)頁(yè)面的參數(shù)。
一、向頁(yè)面中輸出數(shù)據(jù)
語(yǔ)法格式
       Response對(duì)象通過Write方法或WriteFile方法在頁(yè)面輸出數(shù)據(jù),輸出的對(duì)象可以是字符,字符串,字符數(shù)組,對(duì)象或文件。
       用Response輸出數(shù)據(jù)時(shí),ASP.NET最重要的語(yǔ)法是:Response.Write(...);
實(shí)例:
(1)建立一個(gè)ASP.NET空網(wǎng)站,將網(wǎng)頁(yè)的標(biāo)題設(shè)置為“在頁(yè)面中輸出數(shù)據(jù)”。
(2)右擊資源管理器中的項(xiàng)目名稱,選擇“添加新項(xiàng)”命令,在彈出的添加新項(xiàng)的對(duì)話框中選擇“文本文件”,名稱設(shè)置為“WriteFile.txt”。
(3)在WriteFile.txt文本文件中輸入如下文本:

English can be displayed normally. 
For example,this is a book.br/> 
但是中文文字需要設(shè)置一下:br/> 
即在Response.Write開始寫上如下的語(yǔ)句:br/> 
Response.ContentEncoding = System.Text.Encoding.UTF8;或Response.ContentEncoding = System.Text.Encoding.Default; 
hr/> 

 (4)在Default.aspx.cs文件中找到Page_Load函數(shù),在函數(shù)中輸入如下內(nèi)容:

//Response.ContentEncoding = System.Text.Encoding.UTF8; 
//Response.ContentEncoding = System.Text.Encoding.Default; 
char c='a'; 
string s="用Response打印字符串"; 
char[] cArray = { '用', 'R', 'e', 's', 'p', 'o', 'n', 's', 'e', '打', '印','字','符','數(shù)','組',}; 
Page p = new Page(); 
Response.Write("輸出單個(gè)字符:"+c+"hr/>"); 
Response.Write("輸出一個(gè)字符串:" + s + "hr/>"); 
Response.Write("輸出字符數(shù)組:"); 
Response.Write(cArray,0,cArray.Length); 
Response.Write("hr/>"); 
Response.Write("輸出一個(gè)對(duì)象:" + p + "hr/>"); 
Response.Write("輸出一個(gè)文件:" + "hr/>"); 
Response.WriteFile(@"~\WriteFile.txt"); 

(5)啟動(dòng)調(diào)試運(yùn)行的結(jié)果為:

二、向頁(yè)面輸出圖像文件
1)利用WriteFIle方法
語(yǔ)法格式
       該方法將圖片文件以文件流的方式輸出到客戶端頁(yè)面。該方法使用使用之前,必須通過ContentType屬性定義文件流是什么類型文件。
        Response.ContentType="image/JPEG";
        Response.WriteFile(包含圖片的文件名);
 實(shí)例
(1)我們可以利用Windows系統(tǒng)自帶的畫圖工具簡(jiǎn)易畫一個(gè)圖像,也可以從網(wǎng)上下載一個(gè)圖像,保存在本地硬盤文件系統(tǒng)中,文件名設(shè)置為tempimage.jpg。
(2)在本地硬盤文件系統(tǒng)中找到tempimage.jpg,將其復(fù)制到網(wǎng)站資源管理器中。右擊資源管理器,選擇“粘貼”選項(xiàng),將此文件粘貼到本項(xiàng)目中。
(3)在Default.aspx.cs文件中找到Page_Load函數(shù),在函數(shù)中輸入如下內(nèi)容:

Response.ContentType = "image/JPEG"; 
Response.WriteFile(@"~\tempimage.jpg"); 

 (4)運(yùn)行的結(jié)果為:

2)用BinaryWrite方法輸出圖像
語(yǔ)法格式
       通過Response對(duì)象的BInaryWrite方法輸出二進(jìn)制圖像格式如下:
       byte[] buffer=new byte[整型文件長(zhǎng)度];
       Response.BinaryWrite(buffer);

實(shí)例
(1)從網(wǎng)上找一個(gè)*.gif文件,保存到本地硬盤文件系統(tǒng)中,文件名設(shè)置為picture.gif。
(2)右擊網(wǎng)站資源管理,選擇“添加現(xiàn)有項(xiàng)”,彈出“添加現(xiàn)有項(xiàng)”對(duì)話框,找到你保存圖片的本地位置,點(diǎn)擊“添加”即可。
(3)在Default.aspx.cs文件中找到Page_Load函數(shù),在函數(shù)中輸入如下內(nèi)容:

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 
using System.Web.UI; 
using System.Web.UI.WebControls; 
using System.IO;//添加的命名空間 
 
 
public partial class _Default : System.Web.UI.Page 
{ 
 protected void Page_Load(object sender, EventArgs e) 
 { 
 //打開圖片文件,并存在文件流中 
 FileStream stream = new FileStream(Server.MapPath("picture.gif"),FileMode.Open); 
 long FileSize = stream.Length;//獲取流的長(zhǎng)度 
 byte[] Buffer=new byte[(int)FileSize];//定義一個(gè)二進(jìn)制數(shù)據(jù) 
 stream.Read(Buffer,0,(int)FileSize);//從流中讀取字節(jié)塊并將該數(shù)據(jù)寫入給定緩沖區(qū)中 
 stream.Close();//關(guān)閉流 
 Response.BinaryWrite(Buffer);//將圖片輸出在頁(yè)面上 
 //設(shè)置頁(yè)面的輸出格式 
 Response.ContentType = "image/gif"; 
 Response.End();//中止頁(yè)面的其他輸出 
 } 
} 

 (4)運(yùn)行的結(jié)果為:

三、頁(yè)面跳轉(zhuǎn)
       Response對(duì)象的Redirect和AppendHeader方法均可實(shí)現(xiàn)頁(yè)面重定向功能。Redirect方法較為常用,但該方法在頁(yè)面進(jìn)行跳轉(zhuǎn),即在頁(yè)面打開后才執(zhí)行的頁(yè)面重定向。而AppendHeader方法是在頁(yè)面打開前執(zhí)行的頁(yè)面重定向。前者還會(huì)執(zhí)行頁(yè)面的一些程序,而后者不會(huì)。
1、AppendHeader方法
       語(yǔ)法格式
       Response.AppendHeader(Name,Value)
       參數(shù)Name為HTTP頭,參數(shù)Value為HTTP頭的值。
       HTTP頭是HTTP協(xié)議規(guī)定的請(qǐng)求和響應(yīng)消息都支持的頭域內(nèi)容。HTTP頭是頁(yè)面通過HTTP協(xié)議訪問頁(yè)面時(shí),最先響應(yīng)的請(qǐng)求和響應(yīng)消息,例如HTTP頭中的Location,Location頭用于將頁(yè)面重定向到另一個(gè)頁(yè)面,與Redirect方法相似。
實(shí)例
(1)建立一個(gè)新的網(wǎng)站,默認(rèn)主頁(yè)為Default.aspx。在Default.aspx.cs文件中找到Page_Load函數(shù),在函數(shù)中輸入如下內(nèi)容:

Response.Status = "302 Object Moved"; 
Response.AppendHeader("Location","http://www.baidu.com"); 

 (2)運(yùn)行的結(jié)果為:

2、Redirect方法
       語(yǔ)法格式
       Response.Redirect("重定向網(wǎng)頁(yè)方法")方法
實(shí)例
 (1)建立一個(gè)新的網(wǎng)站,默認(rèn)主頁(yè)為Default.aspx。在Default.aspx.cs文件中找到Page_Load函數(shù),在函數(shù)中輸入如下內(nèi)容:   
Response.Redirect(@"~/Redirect.aspx");  
(2)右擊網(wǎng)站資源管理器,選擇“添加新項(xiàng)”,在“添加新項(xiàng)”對(duì)話框中選擇“Web窗體”,命名為Redirect.aspx。
(3)在Redirect.aspx窗體中,添加代碼:

form id="form1" runat="server"> 
div>這是重定向頁(yè)!??!/div> 
/form> 

(4)運(yùn)行的結(jié)果為:

四、Response對(duì)象與JavaScript結(jié)合使用
      有時(shí)候,我們需要在后臺(tái)服務(wù)器通過C#語(yǔ)言來執(zhí)行前臺(tái)客戶端的JavaScript代碼,有一種方法就是采用Response對(duì)象。采用Response.Write()方法將JavaScript腳本寫入客戶端頁(yè)面的head>/head>中并執(zhí)行,我們來說說常用的三種方法:
1、彈出提示對(duì)話框
       Alert在JavaScript中主要用于警告作用,例如將要關(guān)閉一個(gè)網(wǎng)頁(yè)時(shí),可以提醒用戶網(wǎng)頁(yè)將要關(guān)閉。
       Response.Write("script>alert('這是提示對(duì)話框')/script>");
 2、打開窗口
       window.open用于打開新的窗口,語(yǔ)法格式如下:
       Response.Write("script>window.open(url,windowname[,loctaion])/script>");
       可以對(duì)打開的新窗口設(shè)置文檔的名稱,窗口的寬高等一些參數(shù)。
3、關(guān)閉窗口
       window.close用于關(guān)閉瀏覽器窗口。
       Response.Write("script>window.close()/script>");
       實(shí)例
(1)建立一個(gè)新的網(wǎng)站,默認(rèn)主頁(yè)為Default.aspx,打開設(shè)計(jì)視圖,從工具箱拖入三個(gè)Button控件,分別設(shè)置為按鈕1,按鈕2,按鈕3。
(2)分別雙擊三個(gè)Button控件,添加Click事件的代碼為:

protected void Button1_Click(object sender, EventArgs e) 
{ 
 Response.Write("script>alert('這是提示對(duì)話框')/script>"); 
} 
protected void Button2_Click(object sender, EventArgs e) 
{ 
 //在新窗口中打開Newwindow.aspx,各參數(shù)如下設(shè)置 
 string str = "script>window.open('NewWindow.aspx','','height=100,width=400,top=0,left=0,toolbar=no,menubar=no,scrollbars=no,resizable=no,location=no,status=no')/script>"; 
 Response.Write(str); 
} 
protected void Button3_Click(object sender, EventArgs e) 
{ 
 Response.Write("script>window.close()/script>"); 
} 

(3)右擊網(wǎng)站資源管理器中的“添加新項(xiàng)”,在“添加新項(xiàng)”的對(duì)話框中選擇“Web窗體”,設(shè)置為Newwindow.aspx。在
頁(yè)面中添加代碼:

form id="form1" runat="server"> 
div> 
這是window.open打開的新窗體?。?! 
/div> 
/form> 

(4)運(yùn)行的結(jié)果為:
       單擊第一個(gè)按鈕:

       點(diǎn)擊第二個(gè)按鈕:

       點(diǎn)擊第三個(gè)按鈕,我運(yùn)行了Google,F(xiàn)irefox,2345瀏覽器,第三個(gè)按鈕均沒有彈出提示框,最后使用IE打開有了效果(這是瀏覽器設(shè)置的原因):

以上就是關(guān)于asp.net內(nèi)置對(duì)象Response的實(shí)例介紹,希望對(duì)大家了解Response對(duì)象更有幫助。

您可能感興趣的文章:
  • java中response對(duì)象用法實(shí)例分析
  • JSP response對(duì)象實(shí)現(xiàn)文件下載的兩種方式
  • Jsp中response對(duì)象的所有屬性詳細(xì)介紹
  • response對(duì)象的使用(實(shí)例講解)

標(biāo)簽:河南 宜春 本溪 麗江 吉林 重慶 婁底 汕頭

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《asp.net內(nèi)置對(duì)象 Response對(duì)象使用介紹》,本文關(guān)鍵詞  asp.net,內(nèi)置,對(duì)象,Response,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《asp.net內(nèi)置對(duì)象 Response對(duì)象使用介紹》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于asp.net內(nèi)置對(duì)象 Response對(duì)象使用介紹的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章