2011-11-08 16 views
3

私のシナリオ、2つ以上のaspxページ間でセッション変数を渡すにはどうすればよいですか?

私は一意のIDを作成し、それがデータベースに挿入され、目に見えないテキストボックスに表示されるサイトを持っています。今私はこのIDを次のページに送る必要があります。私は使用されたセッション( "MemberId")= Txtnewid.Text。それは動作していません私は可変の文字列に割り当てるときにゼロ値を示しています。私を助けてください 。事前に感謝します

答えて

3

値をテキストボックスにまったく格納する必要はありません。あなたがする必要があるのは、最初に作成されたときにIDを取得してセッションに挿入することだけです。セッション変数を設定し、

dim id as String = Session("MemberId") 
2

を分離コード内のC#と仮定すると:

string id = Session["MemberId"] as string; 

やVBの構文では:サイト内の後続の同じページ上の要求または他の上に、あなたが行うことで、このIDにアクセスすることができます以下のような: -

 Session["MemberId"] = "MemberId"; 

バックとして、次のページにそれを取得します。 -

if (Session["MemberId"] != null) 
    { 
    textBox1.Text = "Successfully retrieved " + (string)Session["MemberId"]; 
    } 

読んでくださいASP.NET Session State

2

あるページから別のページに値を転送する方法はいくつかあります。最も頻繁な方法は

  1. セッション
  2. のQueryString

1.aspx.cs //最初のページ

Guid uniqueid = new Guid(); 

//Above code line will generate the unique id 

string s_uniqueid = uniqueid.ToString(); 

// Convert the guid into string format 

Session.Add("MemberId",s_uniqueid); 

// Store the string unique id string to session variable so far called MemberId 

2.asp.cs // 2番目のページ

です
string s_MemberId = Session["MemberId"].ToString(); 
Now you can use this string member id for any other process. 

または

使用あなたがasp.netのAJAXを使用してアプリケーションを開発している場合、あなたは 1.aspxのように他のResponse.RedirectメソッドServer.Transferを

を使用する必要がある別の のページへ値を転送するクエリ文字列。 CS //最初のページ

Guid uniqueid = new Guid(); 

//Above code line will generate the unique id 

string s_uniqueid = uniqueid.ToString(); 

ご希望の場合は、s_uniqueidの使用暗号化

Response.Redirect("2.aspx?uid=" +s_uniqueid+ ""); 

2.asp.cs // 2番目のページ

string ss_uniqueid = Request.QueryString["s_uniqueid"]; 

は、別のプロセスで使用

関連する問題