如何在新的Web应用程序中实现Global.asax中的User.Identity.Name

时间:2013-08-16 22:53:05

标签: c# asp.net

在Visual Studio中,我使用提供的模板创建了一个全新的ASP.NET Web窗体应用程序。

我没有对VS自动生成的代码做任何事情,除了将以下内容添加到Global.asax.cs

string myself = System.Security.Principal.WindowsIdentity.GetCurrent().Name;
string me = User.Identity.Name;

String我自己成功存储了当前的Windows登录ID。但是string me是null,因为当我调试时,User为null。但是,Visual Studio在调试之前没有显示任何错误。

如何使用User.Identity.Name获取字符串的正确值?

2 个答案:

答案 0 :(得分:8)

Session_Start 中输入代码:

void Session_Start(object sender, EventArgs e) 
{
    string myself = System.Security.Principal.WindowsIdentity.GetCurrent().Name;
    string me = User.Identity.Name;
    Response.Write("myself:" + myself + "<br>me:" + me);
}

答案 1 :(得分:0)

您使用的身份验证是什么?我不记得副手,但匿名身份验证可能会在User中呈现null或null类似对象。