0

aspx ページで新しいセッションを確認する方法は? そして、以下の3行のチェックセッションの違いは何ですか

1. if (Session["DETAILS"] == null) 
2. if (Session["DETAILS"] == "")
3. if (Session["DETAILS"].ToString() == "new")

aspxページのページロードイベントでセッションを確認する方法を教えてください。したがって、セッションが新しい場合は、新しい値を入力する必要があります。セッションが編集の場合、すでに存在する値を編集する必要があります。

4

5 に答える 5

0
if (Session["DETAILS"]== null) 

セッションの存在を確認するために使用されます。(セッションが存在するかどうか)

if (Session["DETAILS"]== "")

セッションが空かどうかを確認するために使用されます (値が含まれていません)。

if (Session["DETAILS"].tostring()== "new")

セッション値を他の値と比較するために使用されます (この場合 => "new")

于 2012-09-18T07:04:08.040 に答える
0

Global.asx のイベント、特に Session_Start および Session_End イベントを見てください。

protected void Session_Start(object sender, EventArgs e)
{
    // Code that runs when a new session is started
    if (HttpContext.Current.Session["DETAILS"] != null)
    {
        HttpContext.Current.Session["DETAILS"] = "[type here your data]";
    }
}

参照

于 2012-09-18T07:04:55.540 に答える
0

最初の 2 つのifステートメントは、key で識別されるセッション値DETAILSが現在のセッションに格納されているかどうかを確認しています。

NullReferenceException3 番目は、指定されたキーを持つオブジェクトがセッションに格納されておらず、呼び出しの結果がnull参照になる場合にスローされる可能性があります。これは安全ではありません。

うまくいけば、キーがセッションにない場合、セッションは「新しい」ものになります。また、値のタイプにも依存するためstring、コードは次のようになります

var sessionValue = SESSION["DETAILS"];
if(string.IsNullOrEmpty(sessionValue))
{
   // session is "new", i.e. the value was not set
}
于 2012-09-18T07:01:25.170 に答える
0

「新しいセッション」で、セッションが空かどうかを確認することを意味する場合は、使用します

if(string.isNullOrEmpty(Session["Obj"].toString())) //This will return true or false
{
   //Do this if true
}
else
{
   //Do this if false
   //Below will force the session to be cleared
   Session.Abandon();
   Session.Clear();
   Response.Redirect(Request.RawUrl); //Which will reload the current page
}  

if (Session["DETAILS"]== null)セッションが null かどうかを
if (Session["DETAILS"]== "")確認し、セッション文字列が空かどうか を確認します。

上記の2つは次のように置き換えることができることに注意してください string.isNullOrEmpty(Session["Obj"].toString());

if (Session["DETAILS"].tostring()== "new")セッションが相関文字列と等しいかどうかを確認します。

于 2012-09-18T07:01:46.527 に答える
0

あなたはこれが役に立つかもしれません

Session.IsNewSession

詳細: http://msdn.microsoft.com/en-us/library/system.web.sessionstate.httpsessionstate.isnewsession.aspx

説明については、非常に多くの回答があり、@ kakarott は正確で小さいです

于 2012-09-18T07:09:48.503 に答える