#c# #asp.net-mvc
#c# #asp.net-mvc
Вопрос:
Как я могу получить значение по умолчанию в зависимости от того, вошел пользователь в систему или нет?
public class ShippingDetails {
public ShippingDetails() {
if (HttpContext.Current.User.Identity.Name != "") {
Name = "";
}
}
public string Name { get; set; }
}
Ответ №1:
Вы имеете в виду получить имя пользователя для входа, в противном случае просто дайте им фиктивное имя? Проверьте, вошли ли они в систему с помощью Request.IsAuthenticated
. Если они есть, возьмите имя пользователя, если нет, просто установите его.
if (HttpContext.Current.Request.IsAuthenticated)
Name = HttpContext.Current.User.Identity.Name;
else
Name = "User";
Комментарии:
1. прохладный. похоже, это тоже работает. Интересно, есть ли преимущество в использовании вашего метода по сравнению с моим или наоборот
2. @Shredder, не уверен, но я предпочитаю использовать Запрос. Аутентифицируется, потому что это дает понять, что я проверяю.
Ответ №2:
Вы также можете проверить
if (HttpContext.Current.User.Identity.IsAuthenticated) {
Name = HttpContext.Current.User.Identity.Name;
}
else
{
Name = "Anonymous"
}