我有兩個控制器,Login
和Account
控制器。登錄驗證之後我已經將值設置爲Session["username"]
和重定向使用Response.Redirect("../Account")
的Account
控制器的索引頁。我需要在Account
控制器的index
頁面上訪問Session["Username"]
的值。我在視圖上使用了@Session["Username"]
,但沒有顯示值。ASP.NET MVC3會話變量不可訪問
是否重新定向原因處置會話變量?
public void LoginVerify(UserModel usermodel)
{
var dbContext = new db_restproEntities(); //class derived from DbContext
var usernames = from username in dbContext.tbl_login select username; //read data
List<tbl_login> users = dbContext.tbl_login.ToList();
bool active = false;
foreach (var x in users)
{
if (x.username == usermodel.username && x.password == usermodel.password)
{
if (x.active == true)
{
active = true;
Session["Message"] = "";
Session["session_username"] = x.username;
Session["status"] = "TRUE";
Session["userid"] = x.user_id;
Response.Redirect("../" + x.role);
}
}
}
Session["Message"] = "Invalid Login Details";
Response.Redirect("../Login");
}
試試這個 http://stackoverflow.com/questions/4381189/accessing-a-session-object-from-razor-layout-cshml – TGH 2013-04-22 04:37:23
@Ayush。它能爲您提供幫助嗎? – PSL 2013-04-22 04:43:08
我懷疑你的登錄邏輯沒有正確設置上下文。如果您可以在重定向的地方發佈您的登錄方法代碼,我們將能夠爲您提供幫助 – 2013-04-23 07:55:17