以下行
Environment.UserName
在 Visual Studio 的调试模式下,返回我需要的用户身份。
然后,当我在 IIS 中设置站点并运行代码时,同一行将返回站点使用的应用程序池的名称。
我怎样才能让它仍然返回用户名?
以下行
Environment.UserName
在 Visual Studio 的调试模式下,返回我需要的用户身份。
然后,当我在 IIS 中设置站点并运行代码时,同一行将返回站点使用的应用程序池的名称。
我怎样才能让它仍然返回用户名?
尝试这样的事情:
if (System.Web.HttpContext.Current.User.Identity.IsAuthenticated)
{
string username = System.Web.HttpContext.Current.User.Identity.Name;
}
重要提示:您需要配置 IIS 以启用集成安全性并禁用匿名登录。
请注意,Environment.Username
返回当前线程的用户名。
尝试使用
Request.ServerVariables["LOGON_USER"]
它会返回DOMAIN\USERNAME
。然后你可以拆分它等。
这对我有用。使用 Environment.GetEnvironmentVariable("USERNAME") 作为当前登录用户名。
链接:https ://www.c-sharpcorner.com/uploadfile/puranindia/the-environment-class-in-C-Sharp/