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 Discussion :

Utilisation du Global.asax


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté
    Avatar de zooffy
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Août 2004
    Messages
    3 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Bâtiment

    Informations forums :
    Inscription : Août 2004
    Messages : 3 895
    Par défaut Utilisation du Global.asax
    Salut tout le monde

    J'ai farfouillé un peu partout et j'ai lu plein de trucs sur le Global.asax.

    Visiblement c'est sécurisé à mort (pas comme l'ancien global.asa de l'ASP 3.0 ) et ça m'a l'air performant.

    Maintenant y a une question que je n'arrive pas à répondre malgrés la lecture abondante que j'ai trouvé sur le sujet. Quelqu'un pourrait il me vulgariser la chose suivante :

    Lors de l'arrivée d'un visiteur sur le site, le Global.asax est lu et éxécuté avant, pendant ou aprés la constitution de la page ? Si c'est pendant, à quel évènement de la page cela se passe t il ?

    Si je déclare et rempli des variables de session dans le Global.asax sont elles réinitialisées et reremplies à chaque changement de page ?

    Et si je mets une variable "Public Shared" à la place, que lui arrive t il et comment y accéder à partir des autres pages et composants du site ?

    Voilà, c'est un peu brouillon, désolé, mais malgrés toutes mes lectures je n'ai pas trouvé de réponse précise à ces quesitons là.

    Merci pour votre aide.

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    298
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Décembre 2008
    Messages : 298
    Par défaut
    Lors de l'arrivée d'un visiteur sur le site, le Global.asax est lu et éxécuté avant, pendant ou aprés la constitution de la page ? Si c'est pendant, à quel évènement de la page cela se passe t il ?
    C'est pas dans le cycle de la page c'est à part.. Ce sont des évennements serveur qui sont dans le global asax... Si tu te met dans le onsession_start du global asax en debug tu verras qu'il passe en tout premier dedans avant de faire autre chose..

    Si je déclare et rempli des variables de session dans le Global.asax sont elles réinitialisées et reremplies à chaque changement de page ?
    Dans quel évennement du global asax ? ca dépend lequel tu choisis...

    Et si je mets une variable "Public Shared" à la place, que lui arrive t il et comment y accéder à partir des autres pages et composants du site ??
    Si tu définis une variable dans le global asax tu y accèdes depuis les pages avec Global.Tavariable.Tostring();
    Par contre attention une variable dans le global asax ca peut être chiant si elle évolue car a chaque redémarrage de l'application tu vas réinitialiser cette variable...

    Voili voilou

  3. #3
    Membre expérimenté
    Avatar de zooffy
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Août 2004
    Messages
    3 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Bâtiment

    Informations forums :
    Inscription : Août 2004
    Messages : 3 895
    Par défaut
    Merci pour ton aide, ça deveint beaucoup plus clair d'un coup.

    Alors descendons un poil dans le pragmatisme.

    L'évènement qui va m'interresser est surtout celui du début de session et un peu la fin.
    Si je comprends bien, mon visiteur arrive sur une page, le Global.asax est parcouru et basta, on y revient plus.
    Donc si je mets des variables dans le onsession_start, elles vont être chargées et j'y accède dans le reste de mes pages et de mes composants, sans souci.
    Pourquoi un tostring ? On peut pas charger de Integer (par exemple) ?

    Question : dans l'évènement, je déclare mes variables normalement ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim MaVariable as String
    MaVariable = "toto"
    Pour la réinit, pas grave, tel que j'ai besoins de l'utiliser, ça marche surtout à la Session et pas à l'Application.

    Je suppose que je peux gérer des trucs dans l'évènement de cloture de session, genre je vide et détruit toutes mes variables ou elles se vident toute seul aprés le TimeOut serveur ?
    Et aussi, l'évènement de fin de session, il se déclenche si mon utilisateur clique sur le bouton de déconnexion du Contrôle Connexion du MemberShip ?

  4. #4
    Membre expérimenté
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    298
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Décembre 2008
    Messages : 298
    Par défaut
    Si je comprends bien, mon visiteur arrive sur une page, le Global.asax est parcouru et basta, on y revient plus.
    C'est pas de ce que j'ai dit le global asax est indépendant des pages.. Si l'utilisateur ou le serveur déclenche un des évennements du global asax tu repasseras dedans.. ( par exemple Application_End).

    Donc si je mets des variables dans le onsession_start, elles vont être chargées et j'y accède dans le reste de mes pages et de mes composants, sans souci.
    Oui.

    Pourquoi un tostring ? On peut pas charger de Integer (par exemple) ?
    C'était un exemple si tu veux récupérer un int tu récupères un int...

    Question : dans l'évènement, je déclare mes variables normalement ?
    A mon avis oui mais j'ai jamais essayé.. Moi les variables du global asax je les déclare en dehors des évennements en variable globale(j'ai besoin de variabl multisession).. Si tu la déclare dans l'évennement je sais pas si elle sera disponible à essayeré... Suffit de poser ta variable et de voir en faisant Global. dans la page si l'intellisense te la ramène..

    Je suppose que je peux gérer des trucs dans l'évènement de cloture de session, genre je vide et détruit toutes mes variables ou elles se vident toute seul aprés le TimeOut serveur ?
    Oui tu peux vider tes variables... Au timeout serveur tu entres dans lévennement Application_End puis Application_Start... dans ces évennements tu peux faire ce que tu veux...

    Et aussi, l'évènement de fin de session, il se déclenche si mon utilisateur clique sur le bouton de déconnexion du Contrôle Connexion du MemberShip ?
    Jamais essayé mais ca parait logique normalement tu devrais passer dans le onSession_end...



  5. #5
    Membre expérimenté
    Avatar de zooffy
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Août 2004
    Messages
    3 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Bâtiment

    Informations forums :
    Inscription : Août 2004
    Messages : 3 895
    Par défaut
    Alors en ce Lundi matin un peu frisquet je me lance dans le Global.asax.

    Donc je place du code genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Public Shared ApplicationStr As String
     
        Sub Session_Start(ByVal sender As Object, ByVal e As EventArgs)
            ApplicationStr = ProjetY.Outils.GetApplicationGUID().ToString
     
        End Sub
    Je me dis que là, c'est cool.
    Et dans un composant utilisateur j'essaie de la récupérer avec un Global. et y a rien qui vient dérrière, juste les NameSpace du projet.
    En fouillant dans le NameSpace, je ne trouve rien sur ma variable.

    Voilà, voilà, un petit coup de main ?

  6. #6
    Membre expérimenté
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    298
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Décembre 2008
    Messages : 298
    Par défaut
    As tu séparé le code source de l'aspx de ton global asax ?

    Global. c'est en C# en vb peut être une différence ?

Discussions similaires

  1. [C#] Rediriger depuis le Global.asax
    Par Pasiphae dans le forum ASP.NET
    Réponses: 3
    Dernier message: 31/08/2009, 15h18
  2. Réponses: 3
    Dernier message: 18/01/2008, 20h45
  3. utiliser Global.asax en vs2005
    Par simodox dans le forum ASP.NET
    Réponses: 6
    Dernier message: 11/04/2007, 15h25
  4. [C#][2.0] Comment utiliser le Global.asax ?
    Par slopera dans le forum ASP.NET
    Réponses: 7
    Dernier message: 13/01/2006, 12h48
  5. [vb.net] session et global.asax
    Par lucie.houel dans le forum ASP.NET
    Réponses: 3
    Dernier message: 15/06/2005, 16h42

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