2016-03-26 8 views
-1

私はASP.NETには初めてです:)そして、sessionについてもっと知りたいと思います。簡単な例です:ボタンをクリックするたびに、listIntにもう1つの整数が追加され、Session["listInt"]を使用してリストが保存されます。私は、変数Session["listInt"]はまだ値を保存]をクリックしたときにラインSession["listInt"] = listInt;を、コメント場合はここで セッション変数を使用して情報を保存する

public partial class TestSession : System.Web.UI.Page 
{ 
    protected void Page_Load(object sender, EventArgs e) 
    { 
     if (!IsPostBack) 
     { 
      if (Session["listInt"] == null) 
      { 
       Session["listInt"] = new List<Int16>(); 
      } 
     } 

    } 

    protected void AddInt_Click(object sender, EventArgs e) 
    { 
     Int16 i = 0; 
     List<Int16> listInt = (List<Int16>)Session["listInt"]; 
     listInt.Add(i); 
     Session["listInt"] = listInt; 
     Response.Write("Hello!"); 

    } 
} 

は(まだリストに複数の整数を追加すること)、私は理解していないことだ。

 Int16 i = 0; 
     List<Int16> listInt = (List<Int16>)Session["listInt"]; 
     listInt.Add(i); 
     //Session["listInt"] = listInt; //No idea why.... 
     Response.Write("Hello!"); 

誰でもセッションの仕組みを教えてください。おかげで事前に:)

答えて

4

あなたのリストは、セッション状態コンテナを介してサーバーから取得するとき、実際には、サーバーメモリ内のオブジェクトへの参照を取得します。したがって、後で再割り当てする必要はありません。

+0

ありがとうございました:)それは私の多くを助けます:) –

関連する問題