Bonjour,
Mon application se découpe comme suit :
- Une master page définit le layout général ainsi que les zones de contenu
- Les pages de contenus héritent de la master page
Les zones de contenu essayent de charger des données dans le contexte d'un utilisateur connecté au système. Il y a donc une information en session qui permet de sauvegarder le contexte.
La master page a du code dans le maMasterPage_load de manière à vérifier l'existence et la cohérence de la session, et redirige si besoin l'utilisateur sur des pages d'erreur et/ou de connexion si la session est invalidée ou n'existe pas/plus sur le serveur.
Problème : Le contexte d'éxécution d'une page n'est pas celui que je pensais ! Je m'explique : La masterpage n'est pas chargée en premier.
- La page de contenu est appellée
- Elle s'initialise
- L'évènement Load se déclenche sur la page de contenu (qui essaye de charger des données depuis des informations contenus dans la session)
- Ensuite l'analyse detecte la page master et la charge (controles sur la session)
- Les deux pages sont fusionnés
- ... puis rendus à l'utilisateur
Problème : si ma session a été détruite ou n'existe pas, je ne m'en rends compte que trop tard puisque le load du master s'effectue APRES le load de la page de contenu ?
Le hic, c'est que je voulais centraliser la vérification de la session sur une seule page (la master) ! Est ce possible, ou dois-je sortir le code qui vérifie le contexte en dehors du master (autre classe c#) et ajouter une ligne à chaque page APSX ? (c'est cela qui m'embète plus, être obligé de rajouter à chaque page des lignes de code de vérification)
Merci de vos lumières
Partager