0
if (Session["admin_uname"].ToString() == "")
{
    Response.Redirect("login.aspx");
}
else
{
    string userid = Session["admin_uname"].ToString(); 

}

セッション用の上記のコードを書きました...しかし、問題は、セッション変数がある場合、それが正しく機能していたことです

セッションがそこにない場合、ログインページにリダイレクトされず、次のようなエラーが発生しました

オブジェクト参照が設定されていません。

4

6 に答える 6

2

セッションが終了しない場合、何も比較できません。したがって、その Null または Not を確認してください。これは、セッションを確認する方法です。

   if (Session["admin_uname"] == null)
    {
        Response.Redirect("login.aspx");
    }
    else
    {
        string userid = Session["admin_uname"].ToString(); 
    }
于 2013-08-11T18:37:25.400 に答える
0

ToString()その nullを呼び出すと、例外が発生します。Nullそのため、値も確認してください。これを試すことができます:-

if (Session["admin_uname"].ToString() == "" || Session["admin_uname"].ToString() == Null)
于 2013-08-11T18:38:55.927 に答える
0

次のように、オブジェクトを参照する前にnullityを確認してください

if (Session["admin_uname"] != null)

// do something
于 2013-08-11T18:39:00.720 に答える
0

もう 1 つのエントリ:

string userid = Session["admin_uname"] ?? "";
if (string.IsNullOrEmpty(userid))
{
    Response.Redirect("login.aspx");
}
于 2013-08-11T19:41:24.800 に答える