对于不清楚的问题标题,我真的很抱歉,但我自己对此有点困惑。
我在 IIS 上运行我的网站,并在顶部显示当前登录的用户的用户名。我的网站托管在本地服务器上,并且各种用户同时访问它。
问题
每次用户打开该站点时,它都会显示最近访问该站点的前一个用户的用户名。
代码
这是我在 global.asax 文件中使用的代码。
void Session_Start(object sender, EventArgs e)
{
// Code that runs when a new session is started
// code to get the current user name when running from IIS
System.Security.Principal.IPrincipal _User;
_User = System.Web.HttpContext.Current.User;
System.Security.Principal.IIdentity _Identity;
_Identity = _User.Identity;
string _Value;
_Value = _Identity.Name.Substring(_Identity.Name.IndexOf(@"\") + 1);
DataTable dtId = CetDatabase.GetEmployeDetails(_Value);
if (dtId.Rows.Count > 0)
{
Session["teamid"] = dtId.Rows[0]["TEAMID"].ToString();
Session["projectid"] = dtId.Rows[0]["PROJECTID"].ToString();
Session["memberid"] = dtId.Rows[0]["MEMBERID"].ToString();
CeteraQMS.Main_Master.projectname = dtId.Rows[0]["PROJECTNAME"].ToString();
CeteraQMS.Main_Master.username = _Value;
CeteraQMS.Main_Master.teamname = dtId.Rows[0]["TEAMNAME"].ToString();
Session["role"] = dtId.Rows[0]["MEMBERROLE"].ToString();
}
else
{
Response.Redirect("AccessDenied.aspx");
}
}
我不确定我哪里出错了。
在此先感谢阿基尔