Widziałem dwa następujące dostępnych wartości logicznych:Jak powinienem sprawdzić, czy użytkownik jest uwierzytelniony w MVC5?
System.Web.Mvc.Controller.User.Identity.IsAuthenticated
System.Web.Mvc.Controller.Request.IsAuthenticated
Czy jest jakaś różnica między nimi. Obaj wydają się robić to samo, więc nie jestem pewien, którego użyć.
Co chciałbym zrobić, to:
@if (User.Identity.IsAuthenticated) {
if (User.IsInRole("Admin")) {
@Html.ActionLink("Admin", "AdminController")
}
}
lub
@if (Request.IsAuthenticated) {
if (User.IsInRole("Admin")) {
@Html.ActionLink("Admin", "AdminController")
}
}
Czy którykolwiek z powyższych prac równie dobrze?
Chciałem mieć inny test: "if (User.IsInRole (" Admin ")) {}" jeśli powyższy test przeszedł pomyślnie. Czy byłoby dobrze dołączyć ten test do Request.IsAuthenticated? – Melina
Nie sądzę, że trzeba owijać test w 'Request.IsAuthenticated'. Wywołanie 'if (User.IsInRole (" Admin ")) {}' powinno być w porządku. –
Dziękuję, że przyjmuję odpowiedź. –