我无法弄清楚如何让会话上班,我觉得我可能错过了一些非常明显的事情。我在ASP项目中有一个母版页,在其中我有这个代码用于母版页上登录对象的登录事件:
protected void Login1_LoggedIn(object sender, EventArgs e)
{
Session.Add("Username", Login1.UserName);
}
因此会话应包含登录对象中用于登录的用户名
在母版页的内容中,我只是通过显示用于登录的用户名来尝试简单的参考:
Welcome <%Response.Write(Session("Username"))%>
但&#34;会话&#34;用红色标出,用&#34;名称&#39;会话&#39;在当前上下文中不存在&#34;。我一直试图弄清楚我错过了什么,但到目前为止,我所尝试的并没有做任何事情。
非常感谢任何建议。
答案 0 :(得分:4)
我认为这可能是命名空间的问题
您可以尝试:
<%Response.Write(HttpContext.Current.Session("Username"))%>
答案 1 :(得分:1)
Session["UserAuthentication"] = username;
使用[]而不是()。
答案 2 :(得分:1)
像这样使用:session["authentication"]
答案 3 :(得分:0)
添加使用声明。
using System.Web;
答案 4 :(得分:0)
试试这个。 HttpContext.Current.Session [&#34; ABC&#34;]