IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET MVC Discussion :

pb mvc4 avec variables de session


Sujet :

ASP.NET MVC

  1. #1
    Membre habitué
    Inscrit en
    Novembre 2004
    Messages
    415
    Détails du profil
    Informations forums :
    Inscription : Novembre 2004
    Messages : 415
    Points : 138
    Points
    138
    Par défaut pb mvc4 avec variables de session
    Bonjour,
    J'ai un site en asp.net/mvc4/razor.
    J'ai fait une action disconnect qui appelle Session.Abandon() suivi d'un return View();
    Le Session.Abandon() génère un appel à la methode Session_End() du fichier global.asax.cs. A l’intérieur de celui-ci, je fais un Session.RemoveAll(); pour supprimer toutes mes variables de session. Je ne fais pas ce dernier appel directement dans mon action car cela me permet de gérer du même coup la suppression des variables de session lorsque le timeout est atteint.
    Le vue que je retourne dans mon action affiche des choses en fonction des variables de session.
    Le problème est que mon appel à la suppression des variables de session n'arrive qu'après l'affichage de la vue, laors que j'ai pourtant fait l'appel avant. Je me retrouve avec une vue affichant des infos qui devraient être à blanc. Comment est-ce que je peux m'assurer que tout ce qui découle de l'appel à Session.Abandon(); est bien effectué avant l'affichage généré par mon return View() s'il vous plaît?

    Je gère également déjà la suppression du cache de la manière suivante :
    Dans la méthode RegisterGlobalFilters(GlobalFilterCollection filters) du global.asax.cs, j'ajoute ceci : filters.Add(new DisableCache());
    Et voici ma classe DisableCache:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    public class DisableCache : ActionFilterAttribute
        {
            public override void OnResultExecuting(ResultExecutingContext filterContext)
            {
                filterContext.HttpContext.Response.Cache.SetExpires(DateTime.UtcNow.AddDays(-1));
                filterContext.HttpContext.Response.Cache.SetValidUntilExpires(false);
                filterContext.HttpContext.Response.Cache.SetRevalidation(HttpCacheRevalidation.AllCaches);
                filterContext.HttpContext.Response.Cache.SetCacheability(HttpCacheability.NoCache);
                filterContext.HttpContext.Response.Cache.SetNoStore();
            }
        }
    Je me dis qu'il doit y avoir un fonctionnement asynchrone, mais dans ce cas, comment est-ce que je peux forcer Session.Abandon() à finir tous ces appels avant que la ligne qui suit "return View()" s'exécute?

    D'avance merci,
    Julien

  2. #2
    Membre habitué
    Inscrit en
    Novembre 2004
    Messages
    415
    Détails du profil
    Informations forums :
    Inscription : Novembre 2004
    Messages : 415
    Points : 138
    Points
    138
    Par défaut
    J'ai trouvé une solution qui consiste à Appeler Session.Clear(); juste avant mon Session.Abandon() , ce dernier mettant dans une queue la suppression de l'objet Session jusqu'à ce que tous les éléments de la page soit effectués... cf http://msdn.microsoft.com/en-us/libr...=vs.90%29.aspx dans la partie Remarks.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. creer XML avec variable de session
    Par voyageurdumonde dans le forum Langage
    Réponses: 2
    Dernier message: 17/02/2011, 18h37
  2. Réponses: 6
    Dernier message: 30/01/2011, 23h50
  3. [MySQL] Problème avec variables de session PHP sous safari
    Par tomguiss dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 20/10/2010, 13h24
  4. requete sql insert en asp avec variables de session
    Par b_steph_2 dans le forum ASP
    Réponses: 14
    Dernier message: 29/03/2007, 15h28
  5. Problème avec variables de session
    Par jorggy dans le forum Langage
    Réponses: 2
    Dernier message: 21/03/2007, 23h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo