Как я могу получитьКак я могу получить имя_домена имя_пользователя с .NET Framework?
DomainName \ AccountName
в виде строки с .NET Framework?
Как я могу получитьКак я могу получить имя_домена имя_пользователя с .NET Framework?
DomainName \ AccountName
в виде строки с .NET Framework?
System.Security.Principal.WindowsIdentity.GetCurrent().Name.ToString()
Вы можете использовать Environment.UserDomainName
свойство, чтобы получить домен и Environment.UserName
для получения имени пользователя:
Dim domainAndUserName As String _
= Environment.UserDomainName & "\\" & Environment.UserName
Неверный. Environment.UserDomainName содержит только домен, а не имя пользователя. –
@CERIQ: Извините, я неправильно прочитал документы и исправил свой ответ. Странно, что он все еще получил upvotes ... –
У вас слишком много обратных косых черт для VB.NET –
если вы используете ASP.NET вы можете использовать
HttpContext.Current.User.Identity.Name;
WindowsIdentity.GetCurrent().Name
Environment.UserDomainName
contai ns имя домена/компьютера, к которому подключена ваша учетная запись. Environment.UserName
содержит только имя пользователя. Чтобы получить результат, вам нужно соединить переменные (Environment.UserDomainName & "\\" & Environment.UserName
). Это работает только в локальном контексте, хотя, если вы используете этот код на веб-сайте, вы получите имя учетной записи, в которой работает ваш пул приложений. В asp.net вместо этого используйте HttpContext.Current.User.Identity.Name
.
Прежде чем присоединиться к доменному имени и имени пользователя, сначала проверьте, не является ли доменное имя пустым в случае локальных пользователей. – Alexander
+1, но на самом деле вам не нужно было бы вызывать 'ToString()', поскольку 'Name' уже имеет строку типа. –
@ 0xA3: Хорошая точка - думаю, я немного увлекся собой :-) – codingbadger