我有两个控制器,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