服務(wù)熱線
153 8323 9821
Web 應(yīng)用程序在傳統(tǒng)的意義上來說是無狀態(tài)的, Web 應(yīng)用不能像 Win Form 那樣維持客戶端狀態(tài),所以在 Web 應(yīng)用中,通常需要使用內(nèi)置對象進(jìn)行客戶端狀態(tài)的保存。這些內(nèi)置對象能夠?yàn)?/span> Web 應(yīng)用程序的開發(fā)提供設(shè)置,配置以及檢索等功能。
13.1 ASP.NET 內(nèi)置對象在 ASP 的開發(fā)中,這些內(nèi)置對象已經(jīng)存在,這些內(nèi)置對象包括 Response 、 Request 、 Application 等,雖然 ASP 是一個(gè)可以稱得上是“過時(shí)的”技術(shù),但是在 ASP.NET 開發(fā)人員中依舊可以使用這些對象。這些對象不僅能夠獲取頁面?zhèn)鬟f的參數(shù),某些對象還可以保存用戶的信息,如 Cookie 、 Session 等。
13.1.1 Request 傳遞請求對象Request 對象是 HttpRequest 類的一個(gè)實(shí)例, Request 對象用于讀取客戶端在 Web 請求期間發(fā)送的 HTTP 值。 Request 對象常用的屬性如下所示。
q QueryString :獲取 HTTP 查詢字符串變量的集合。
q Path :獲取當(dāng)前請求的虛擬路徑。
q UserHostAddress :獲取遠(yuǎn)程客戶端 IP 主機(jī)的地址。
q Browser :獲取有關(guān)正在請求的客戶端的瀏覽器功能的信息。
1 . QueryString :請求參數(shù)
QueryString 屬性是用來獲取 HTTP 查詢字符串變量的集合,通過 QueryString 屬性能夠獲取頁面?zhèn)鬟f的參數(shù)。在超鏈接中,往往需要從一個(gè)頁面跳轉(zhuǎn)到另外一個(gè)頁面,跳轉(zhuǎn)的頁面需要獲取 HTTP 的值來進(jìn)行相應(yīng)的操作,例如新聞頁面的 news.aspx?id=1 。為了獲取傳遞過來的 id 的值,則可以使用 Request 的 QueryString 屬性,示例代碼如下所示。
protected void Page_Load(object sender, EventArgs e)
{
if (!String.IsNullOrEmpty(Request.QueryString["id"])) // 如果傳遞的 ID 值不為空
{
Label1.Text = Request.QueryString["id"]; // 將傳遞的值賦予標(biāo)簽中
}
else
{
Label1.Text = " 沒有傳遞的值 "; // 提示沒有傳遞的值
}
if (!String.IsNullOrEmpty(Request.QueryString["type"])) // 如果傳遞的 TYPE 值不為空
{
Label2.Text = Request.QueryString["type"]; // 獲取傳遞的 TYPE 值
}
else
{
&