C# .NET返回不正确的用户名

C# .NET返回不正确的用户名,c#,.net,windows-authentication,C#,.net,Windows Authentication,几周前我创建了一个帐户,当时我犯了一个拼写错误。我更改了帐户,他们可以用新名称登录域。然而,我们内部有一个web应用程序,它仍然使用错误的名称 net应用程序使用 System.Security.Principal.WindowsIdentity.GetCurrent().Name; 这就是旧名字 如果我使用 Environment.UserName 我得到了正确的新名字。我在广告中错过了什么?是否有地方可以更改名称,这将导致System.Security.Principal.Windows

几周前我创建了一个帐户,当时我犯了一个拼写错误。我更改了帐户,他们可以用新名称登录域。然而,我们内部有一个web应用程序,它仍然使用错误的名称

net应用程序使用

System.Security.Principal.WindowsIdentity.GetCurrent().Name;
这就是旧名字

如果我使用

Environment.UserName
我得到了正确的新名字。我在广告中错过了什么?是否有地方可以更改名称,这将导致System.Security.Principal.WindowsIdentity.GetCurrent().name;给正确的名字


我没有使用.net的经验,所以如果这个问题有一个明确的答案,我很抱歉

在这里查看答案:

添加密钥:

“HKLM/System/CurrentControlSet/Control/Lsa/LsaLookupCacheMaxSize=0”


在缓存时将其保存到注册表。我认为重新启动IIS不会解决此问题。

是否有可能将其缓存在web应用程序/服务器中?每个用户都有两个登录名:
用户登录名
用户登录名(Windows 2000之前)
。确保你已经纠正了这两个问题。很可能是这样的。我将在业务结束后的几个小时内尝试这样做(以防出现任何错误),除此之外,服务器可以缓存名称。你看,亚历克斯,我确实有。这似乎仍然是最合乎逻辑的解释。windows标识返回域\用户名,这是windows 2000之前的登录名。。但是我在打字和名字匹配的时候看着它。谢谢戴夫。我尝试了那个修复,但它仍然给出了错误的用户名。