Получить текущее имя пользователя, вошедшего в систему
-
02-01-2020 - |
Вопрос
Я хочу получить имя пользователя текущего вошедшего в систему пользователя.Я использую приведенный ниже код, но он возвращает пользователя, учетные данные которого используются в удостоверении пула приложений IIS.Веб-сайт MVC развернут на сервере.
я использовал
string userid = System.Security.Principal.WindowsIdentity.GetCurrent().Name.ToString();
string userid = Environment.UserName;
string userid = System.DirectoryServices.AccountManagement.UserPrincipal.Current.GivenName.ToString();
string userid = System.Web.HttpContext.Current.User.Identity.Name.ToString()
Но, похоже, ничто не дает мне правильного ответа.
Мне нужно получить имя пользователя в конструкторе HomeController
.
Ниже мой web.config
<authentication mode="Windows" />
<authorization>
<allow users="*" />
</authorization>
Решение
просто вместо
string userid = System.Web.HttpContext.Current.User.Identity.Name.ToString()
используйте это, это будет работать нормально
string userid = HttpContext.Current.User.Identity.Name.ToString()