在ASP.NET中有幾種基于頁面間的傳值方法:常見的有QueryString.這種方法最簡(jiǎn)單不過了,,但缺點(diǎn)就是它把要傳送的值顯示在地址欄中,如果對(duì)于在安全性的信息來說這并不是一種好的解決方案,。還有一個(gè)缺點(diǎn)就是它不能傳對(duì)象,。這種方法適合于傳送一個(gè)簡(jiǎn)單的值及安全性不大重要的信息,。例:
有兩個(gè)頁面:WebForm1.aspx,WebForm2.aspx。 在WebForm1.aspx.cs的某些事件中放置如下代碼: string url="WebForm2.aspx?name="+this.txtname.Text; Response.Redirect(url); 接著關(guān)鍵時(shí)刻出現(xiàn)了:在WebForm2.aspx.cs中某些事件中放置如下代碼: lblname.Text=Request.QueryString["name"]; OK! 整個(gè)傳值過程完成,! 還有一種是利用Session變量來傳值,,這種也比較常用。利用Session比較靈活,,可以 第三種方式是利用Request對(duì)象來取值,,(注:這里使用的是html控件)這種比較簡(jiǎn)潔。實(shí)現(xiàn)如下: 在WebForm1.aspx中: Name: 在WebForm2.aspx.cs中某個(gè)事件寫入:Response.Write(Request.Form["txtname"]); 當(dāng)點(diǎn)擊submit按鈕后,,即通過Request.Form[”txtname”]取出了值,, 第四種方法是利用Server對(duì)象的Transfer()方法來傳值,它接收一個(gè)頁面對(duì)象,。 下面用代碼來講解一下這種實(shí)現(xiàn)方式: 在WebForm1.aspx 的某個(gè)事件中寫入如下代碼:Server.Transfer("WebForm2.aspx"); //傳遞頁面對(duì)象 ");?? (注:以上幾種方法,除了Request.Form()這種傳值方法使用的是HTML控件外,,其它幾種都是使用WEB控件) |
|