web應用程式的狀態管理.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
web應用程式的狀態管理

第7章 Web應用程式的狀態管理 第7章 Web應用程式的狀態管理 7-1 ASP.NET狀態管理的基礎 7-2 再談顯示狀態 7-3 網頁間的資料傳遞 7-4 Cookies的處理 7-5 Session物件 7-6 Application物件與Global.asax檔案 7-1 ASP.NET狀態管理的基礎-說明 因為HTTP通訊協定並不會保留狀態,所以在ASP.NET網頁間的資料傳遞,或稱為資料分享,就成為一項重要的課題。換個角度來說,因為多頁ASP.NET網頁可能需要存取一些共同資訊,所以ASP.NET需要保留資訊來維持Web應用程式的正確執行,稱為「狀態管理」(State Management)。 ASP.NET提供多種方法來執行狀態管理,各有不同範圍和特點,可以讓我們保留單一ASP.NET網頁、兩個ASP.NET網頁間、整個Web應用程式或永久保存狀態資訊。 7-1 ASP.NET狀態管理的基礎-種類 7-2 再談顯示狀態-說明 顯示狀態(ViewState)是ASP.NET內建機制,在第5章已經說明過伺服端控制項的顯示狀態管理,可以自動保留單一ASP.NET網頁中的控制項值,即屬於網頁本身的狀態資料,因為Web Form表單的表單送回,預設是送回給自己。 換句話說,如果需要保留單一ASP.NET網頁的狀態,顯示狀態就是最好的選擇。不過,因為顯示狀態是使用隱藏欄位來保留狀態資訊,所以太大量的資訊會嚴重影響網頁傳輸的效能,此時建議使用資料庫或Session物件來保留。 7-2 再談顯示狀態-存取ViewState變數 ASP.NET顯示狀態可以自行使用程式碼來新增StateBag物件的元素,稱為ViewState變數,例如:保留C#變數nick的值,如下所示: ViewState[NickName] = nick; 在Web Form表單送回後,我們可以使用程式碼取出顯示狀態保留的變數值,如下所示: if (ViewState[NickName] != null) { myName = ViewState[NickName].ToString(); } lblOutput.Text = myName + / + txtName.Text; 7-2 再談顯示狀態-範例網站 ASP.NET網站:Ch7-2 在ASP.NET網頁使用TextBox控制項輸入姓名資料,並且使用顯示狀態儲存C#變數值,按下按鈕送出後,可以顯示輸入資料和保留的C#變數值,如下圖所示: 7-3 網頁間的資料傳遞 7-3-1 QueryString集合物件 7-3-2 跨網頁的表單送回 7-3-1 QueryString集合物件-說明 在ASP.NET網頁可以使用HTML超連結,或HyperLink超連結控制項的【NavigateUrl】屬性指定URL網址來傳遞參數字串,參數是位在問號之後,如果參數不只一個,請使用「」符號分隔,如下所示: http://localhost/Default.aspx?para1=value1para2=value2 上述URL網址傳遞參數para1和para,其值分別為「=」等號後的value1和value2。另一種方法是在程式碼使用Response物件的Redirect()方法,將URL參數傳遞給下一頁ASP.NET網頁。 7-3-1 QueryString集合物件-Response.Redirect()方法 Response.Redirect()方法可以將網頁轉址到其他URL網址或ASP.NET網頁,並且在網址後加上URL參數,如下所示: Response.Redirect(Ch7-3-1.aspx?User= + ”陳會安Pass=1234); 上述程式碼轉址至Ch7-3-1.aspx,並且傳遞參數User和Pass。 7-3-1 QueryString集合物件-使用QueryString集合物件取得傳遞值 當使用HyperLink超連結控制項,或Response.Redirect()方法,將參數傳遞至其他ASP.NET網頁後,在該ASP.NET網頁可以使用QueryString集合物件來取出傳遞的參數值,如下所示: Username = Request.QueryString[User]; Password = Request.QueryString[Pass]; 上述程式碼可以取得URL參數User和Pass的值。 7-3-1 QueryString集合物件-Server.UrlEncode()和UrlDecode()方法 URL參數值可能擁有特殊符號,特別是中文值,此時可以將參數使用Server物件的UrlEncode()方法進行加碼,如下所示: string

文档评论(0)

cynthia_h + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档