Bonjour.

Je souhaite que mon application vérifie la présence d'un cookie sur le poste client pour authentification. Et ce depuis n'importe quelle page du site ! Mais sans utiliser le JavaScript svp, je trouve ça sale et trop lent...

Si le cookie existe, alors on logue la personne, en utilisant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
WebSecurity.Login(login.UserName, login.Password, persistCookie: login.RememberMe)
Puis on effectue une redirection sur un autre controller.

Voilà mon architecture de controller :
BaseController : Controller
MesController : BaseController
J'ai prévu une méthode "SpeedLogin()" dans mon controller Account :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
public ActionResult SpeedLogin()
        {
            HttpCookie cookie = HttpContext.Request.Cookies.Get("LivDevis.Login");
            WebSecurity.Login(cookie.Values.Get("UserName"), cookie.Values.Get("Password"), persistCookie: true);
 
            return RedirectToAction("Index", "DashBoard");
        }
Et voilà avec quoi je compte l’appeler :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
if (User.Identity.IsAuthenticated)
            {
                object o = Session["preferredName"];
                if (o == null)
                {
                    // appel de SpeedLogin()
                }
            }
Ma question est : Où dois-je placer mon bout de code, et comment appeler la méthode "SpeedLogin()" ?

Merci .