我问了几个人在工作,但没有人可以帮助我。所以就是这样。
我在域名上。 Windows身份验证。拒绝匿名。
我在本地webdev服务器上启动我的应用程序。然后尝试访问它。所以......
<%= Page.User.Identity.Name %>
<%= HttpContext.Current.User.Identity.Name %>
在我的.aspx页面中..
当我访问它时(在这个例子中我只想看到我记录的用户的名字),我得到了我的用户名,就像预期的那样。但是,当我想“测试”我的应用程序 - 仍在第一个帐户中运行 - 我在另一个浏览器中访问它(不,我不是愚蠢的,当然在另一个窗口下,为测试而做)我得到了第一个用户名仍然。所以问题是:User.Identity.Name返回我启动应用程序的用户名,而不是通过浏览器访问它的用户名。
任何提示? :)
度过愉快的一天
答案 0 :(得分:1)
接受的答案(正如问题上方的评论所示)将是:
集成的Web服务器无法正确处理Windows身份验证。 IIS应该做得更好并识别不同的用户。问题的根源是集成的Web服务器。
答案 1 :(得分:0)
输出缓存是一个常见原因:用户B可能正在获取为用户A生成的页面的缓存副本。