0
我正在開發一個ASP MVC網站,但我遇到了Session對象的麻煩。Session對象在asp mvc中總是返回null?
我有這個類管理會話,與屬性,用於存儲語言:
公共類SessionManager {
public static string Language
{
get
{
object language = GetSession("LANGUAGE");
if (language != null)
{
return language as string;
}
return "EN";
}
set
{
SetSession("LANGUAGE", value);
}
}
//methods for creating session objects
private static bool SetSession(string key, object value)
{
if (HttpContext.Current != null && HttpContext.Current.Session != null)
{
HttpContext.Current.Session[key] = value;
return true;
}
return false;
}
private static object GetSession(string key)
{
if (HttpContext.Current != null && HttpContext.Current.Session != null)
{
return HttpContext.Current.Session[key];
}
return null;
}
}
當我想改變我所說的語言一種來自HomeController 的設置新語言的方法:
public void SetLanguage(string language)
{
SessionManager.Language = language;
}
但問題是Session不存儲新值,它總是在SessionManager類中返回null。 爲什麼它是空的?請幫忙!
所以,我應該怎麼辦? – inna
每次當您想要獲取/設置會話數據時,從您的方法中刪除靜態並創建一個SessionManager類的實例 – dimonser
我也試過了,但它仍然是空的:( – inna