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