ASP.NET - Porque la HttpContext.Session.Clear no funciona

 
Vista:
sin imagen de perfil

Porque la HttpContext.Session.Clear no funciona

Publicado por Mario (1 intervención) el 30/10/2021 04:05:49
Buenas noches a todos, soy nuevo en el tema y le ando dando vueltas; estoy usando .NET Core 5y tratando de usar HttpContext.Session como parte de la autenticación (con Visual Studio 2019).

En el archivo startup.cs

public void ConfigureServices(IServiceCollection services)
{
services.AddDistributedMemoryCache();
services.AddSession(options =>
{ options.IdleTimeout = TimeSpan.FromMinutes(10); });

}

public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
else
{
app.UseExceptionHandler("/Home/Error");
}
app.UseStaticFiles();
app.UseRouting();
app.UseAuthorization();
//2: Agregado
app.UseSession();
//2:
app.UseEndpoints(endpoints =>
{
endpoints.MapControllerRoute(
name: "default",
pattern: "{controller=Usuario}/{action=Iniciosesion}/{id?}");
});
}

En el controlador de usuario y la accion iniciosesion:

[HttpPost]

public IActionResult Iniciosesion(Usuario user)
{
if (HttpContext.Session.GetString("Correo") == null)
{
string str_usuario = new Usuario().Iniciosesion(user, Comp);
if (str_usuario.ToUpper().IndexOf("FALLO") == 0)
{
ViewBag.message = str_usuario;
return View("Iniciosesion");
}
else
{
HttpContext.Session.SetString("Correo", str_usuario);
}

}
return RedirectToAction("Menuprincipal");
}
En el mismo controlador usuario, la acción cerrarsesion:

public IActionResult Cerrarsesion()
{
HttpContext.Session.Clear();
return RedirectToAction("Iniciosesion");
}
Al ejecutar el cierre de sesión, me regresa a la pantalla de inicio de sesión, pero si uso las flechas del navegador para regresar a la pagina anterior, me regresa al menú principal. Pero, si ejecuto cargar o actualizar la pagina de nuevo, ya no muestra el menú principal, solo se queda en la pantalla de inicio de sesión (que es lo que quiero). Mucho agradeceré algunas referencia o ayuda al respecto, gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder