2

我在获取登录机器的人的用户名时遇到了困难。
Environment.UserName返回'defaultAppPool',我需要返回用户名。怎么除冰?

4

2 回答 2

2

您可以尝试以下方法之一:

方法一:

string userName = HttpContext.Current.User.Identity.Name;

方法二:

        private static string GetCurrentUserName()
        {
          string[] pathParts = Thread.CurrentPrincipal.Identity.Name.Split('\\');
            if (pathParts.Length != 0)
            {
                return pathParts[pathParts.Length - 1];
            }

            return string.Empty;
        }
于 2013-05-17T11:48:31.190 回答
1

在 ASP.NET 中,您必须使用User.Identity.Name 参见http://msdn.microsoft.com/en-us/library/system.web.httpcontext.user.aspx

然后测试:

if (User.Identity.IsAuthenticated)
   Label1.Text = User.Identity.Name;
else
   Label1.Text = "No user identity available.";
于 2013-05-17T13:01:43.460 回答