signout mvc formsauthentication c# asp.net forms-authentication

c# - mvc - ¿Cómo verificar que el usuario esté "conectado"?



formsauthentication mvc 5 (4)

Estoy usando la autenticación de formulario con el método siguiente en mi aplicación ASP.NET

FormsAuthentication.RedirectFromLoginPage(txtUsername.Text, true);

¿Cómo puedo verificar si el usuario está conectado o no? ¿Y cómo puedo obtener el nombre de usuario de un usuario conectado?


La forma más fácil de verificar si están autenticados es Request.User.IsAuthenticated , creo (desde la memoria)


La forma más simple:

if (Request.IsAuthenticated) ...


Logré encontrar el correcto. Está abajo.

bool val1 = System.Web.HttpContext.Current.User.Identity.IsAuthenticated

EDITAR

El crédito de esta edición es para @Gianpiero Caretti, quien sugirió esto en un comentario.

bool val1 = (System.Web.HttpContext.Current.User != null) && System.Web.HttpContext.Current.User.Identity.IsAuthenticated


if (User.Identity.IsAuthenticated) { Page.Title = "Home page for " + User.Identity.Name; } else { Page.Title = "Home page for guest user."; }