程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> .NET實例教程 >> ASP.NET(頁面傳值)

ASP.NET(頁面傳值)

編輯:.NET實例教程
.通過Session取值,在一個頁面中賦值,在其他頁面中共享,這個方式也被廣泛應用,個人不傾向於用這種方式,我怕造成Session值的混亂無序,Session用來存一些公共的東西已經累得夠嗆了。

在global頁面裡初始化一個session變量,然後自己可以在需要賦值的頁面對session變量進行賦值 

2.通過Context傳值,在傳送頁面之前,將需要傳遞到其他頁面的值存在Context中。示例代碼如下:

傳送頁面 //點擊某個button點擊事件時觸發
private void btnTransfer_ServerClick(object sender, EventArgs e)
        {
            Context.Items["SourceData"]=SourceData.Value;
            Server.Transfer("DestinationPage.ASPx");
        } 
接收頁面

string a=Context.Items["SourceData"].ToString(); 

3.通過Server.Transfer的方式。
這個方式在方法三種已經用到了,不過可以在調用頁面為要傳遞到被調用頁面的值創建屬性(當然可以直接將它設成public),這樣就可以在其他頁面訪問了。

傳送頁面 //要傳送的值
private  System.Web.UI.HtmlControls.HtmlInputText SourceData;  
public string getSourceData
{
  get
  {
    return SourceData.Value;
  }

//傳送頁面
Server.Transfer("DestinationPage.ASPx"); 
 

接收頁面

private SourceClass sourcePage;
 
sourcePage=(SourceClass)Context.Handler; 
string aa=sourcePage.getSourceData; 
 

以上就是Post的在不同頁面傳遞數據的方式了。
下面是get方法
我常用的是  傳送頁面

string aa=SourceData.Value; 
string bb=SourceData.Value; 
string url="DestinationPage.ASPx?parameter1="+aa+"&parameter2="+bb;
Response.Redirect(url,false); 
接收頁面

string aa=Request.QueryString["parameter1"].ToString();
string bb=Request.QueryString["parameter2"].ToString();


至於 Response.Redirect(url,false)裡的false都是Response.End()這個方法惹的禍,老蓋說,寫成false就好了,因為默認是true。我都轉向其他頁面了,還不讓我終止原來頁面的響應,BT!

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved