簡體   English   中英

會話{“對象引用未設置為對象的實例。”} System.Exception {System.NullReferenceException}

[英]session {“Object reference not set to an instance of an object.”} System.Exception {System.NullReferenceException}

我是ASP.NET的新手,我陷入了一個問題。 我正在嘗試管理已經寫好的網站。 當我到達以下行時出現此錯誤:

if (Session["usertype"].Equals("2"))
{

}

Session["usertype"]已在上一頁分配。 在當前頁面上,我松開了所有會話變量(我在調試中檢查了它)。

登錄后以以下方式分配會話

Session["usertype"] = "2"

登錄后頁面,10秒后刷新。 那是我放松會議的地方。 請讓我知道,這里有什么問題。

如果您收到NullReferenceException ,則會話值將返回為null 您可能應該檢查一下:

var userType = (string)Session["usertype"];
if(userType == null) {
    // .. things to do if no session value
} else {
    // test "2" etc
}

可能是會話狀態被禁用,或者實際上沒有設置值。

只需檢查Session變量是否為Null-

     if( Session["usertype"] != null )
    {
         //Now check your condition here
    }
   else {
           //Perform any operation
        }

您正在使用WebForms還是MVC? 在WebForms中,會話狀態直到頁面Init之后才可用。

您的過程是否超過10秒? 您可以在IIS中 更改會話的長度。 打開IIS,單擊您的網站,選擇“會話狀態”(“ ASP.NET”選項卡),查看“狀態服務器”,更改超時(默認值:10秒)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM