如何显示与域名分开的用户名,如 domain\username: 在 ASP.net 中,以便它可以用作值
How to show a username seperated from domain name like domain\username: in ASP.net so it can be used as a value
我正在设置一个应用程序,在页脚中,一个 Site.Master 文件包含一个文本标签以显示 "Welcome, username"。尽管我应用了正确的代码,但我似乎无法获取用户名的文本。
我对此很陌生,所以看不到我在做什么了。非常感谢您。
在 Site.Master 文件中:
<asp:Label ID="Label1" runat="server" ></asp:Label>
在 Site.Master.cs 文件中:
WindowsIdentity windowsIdentity = WindowsIdentity.GetCurrent();
if (windowsIdentity == null)
throw new InvalidOperationException("WindowsIdentity is null");
string nameWithoutDomain = windowsIdentity.Name.Split('\').Last();
Label1.Text = String.Format("Welcome,{0}", nameWithoutDomain);
[解决方案]
var windowsIdentity = HttpContext.Current.User.Identity;
if (windowsIdentity == null)
throw new InvalidOperationException("WindowsIdentity is null");
string nameWithoutDomain = HttpContext.Current.User.Identity.Name.Split('\').Last();
Label1.Text = String.Format("Welcome,{0}", nameWithoutDomain);
WindowsIdentity.GetCurrent()
获取网站为 运行 的标识,这通常是应用程序池标识。这不是登录您网站的当前用户(除非您使用模拟)。
请改用 HttpContext.Current.User.Identity
,这将为您提供用于验证当前 HTTP 请求的身份。
这假定您的 Windows 身份验证工作正常。
我正在设置一个应用程序,在页脚中,一个 Site.Master 文件包含一个文本标签以显示 "Welcome, username"。尽管我应用了正确的代码,但我似乎无法获取用户名的文本。
我对此很陌生,所以看不到我在做什么了。非常感谢您。
在 Site.Master 文件中:
<asp:Label ID="Label1" runat="server" ></asp:Label>
在 Site.Master.cs 文件中:
WindowsIdentity windowsIdentity = WindowsIdentity.GetCurrent();
if (windowsIdentity == null)
throw new InvalidOperationException("WindowsIdentity is null");
string nameWithoutDomain = windowsIdentity.Name.Split('\').Last();
Label1.Text = String.Format("Welcome,{0}", nameWithoutDomain);
[解决方案]
var windowsIdentity = HttpContext.Current.User.Identity;
if (windowsIdentity == null)
throw new InvalidOperationException("WindowsIdentity is null");
string nameWithoutDomain = HttpContext.Current.User.Identity.Name.Split('\').Last();
Label1.Text = String.Format("Welcome,{0}", nameWithoutDomain);
WindowsIdentity.GetCurrent()
获取网站为 运行 的标识,这通常是应用程序池标识。这不是登录您网站的当前用户(除非您使用模拟)。
请改用 HttpContext.Current.User.Identity
,这将为您提供用于验证当前 HTTP 请求的身份。
这假定您的 Windows 身份验证工作正常。