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

C# Discussion :

Comment savoir si la session est lockée ? [FAQ]


Sujet :

C#

  1. #1
    Expert confirmé

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2006
    Messages
    3 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 580
    Points : 5 194
    Points
    5 194
    Par défaut Comment savoir si la session est lockée ?
    Bonjour ,

    Juste en passant, je viens de faire une petite contribution sur le site csharp.com
    suite à une question d'une personne souhaitant savoir comment detecter
    que l'utilisateur à "locker" sa session pour faire des choses différentes en mode "locké"..

    Ci joint un petit bout de code qui pourrait servir....

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    public partial class Form1 : Form
        {
            private static bool SessionLock = false;
            private System.Threading.Timer timer = new System.Threading.Timer(OnTimer,null,1000,1000);
            private static StreamWriter writer;
            public Form1()
            {
                InitializeComponent();
                SystemEvents.SessionSwitch += new SessionSwitchEventHandler(SystemEvents_SessionSwitch);
                writer = new StreamWriter(@"d:\trace.txt");
                writer.AutoFlush = true;
            }
     
            static void OnTimer(object state)
            {
                if (SessionLock)
                {
                    writer.WriteLine("OnTimer Session Locked : Tick at " + DateTime.Now.Second.ToString());
                }
                else
                {
                    writer.WriteLine("OnTimer Session UnLocked : Tick at " + DateTime.Now.Second.ToString());
                }
            }
     
            void SystemEvents_SessionSwitch(object sender, SessionSwitchEventArgs e)
            {
     
                if (e.Reason == SessionSwitchReason.SessionLock)
                {
                    writer.WriteLine("Session is lock at " + DateTime.Now.ToString());
                    SessionLock = true;
                }
                if (e.Reason == SessionSwitchReason.SessionUnlock)
                {
                    writer.WriteLine("Session is unlock at " + DateTime.Now.ToString());
                    SessionLock = false;
                }
            }
        }
    C'était ma contribution du matin

    The Monz, Toulouse

  2. #2
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Points : 19 434
    Points
    19 434
    Par défaut
    On va le mettre dans la FAQ



  3. #3
    Expert confirmé

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2006
    Messages
    3 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 580
    Points : 5 194
    Points
    5 194
    Par défaut
    Mais de rien Thomas

    (you welcome)....

    A quand un symposium des modérateurs et intervenants de developpez.com ?



    The Monz, Toulouse

  4. #4
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    Quelque définition pour Symposium :
    http://www.google.fr/search?hl=fr&de...ition&ct=title
    Je met cela car moi lorsque j'ai vu le mot je me suis demandé :
    "Qu'est ce que c'est que ce mot barbare ?"

    Personnellement je préfère la deuxième définition

    Bon sinon pour ton code, en fait tu ecris un comportement d'un état d'une session.
    Si quelqu'un avait le courage (pas moi ) il pourrait transformer le code en utilisant le state design pattern (patron de conception d'état) et ainsi développer un composant générique pour gérer les états d'une session et faire des actions diff en fonction de ceux_ci.

    J'aime b ien donner du boulot aux autres

  5. #5
    Expert confirmé

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2006
    Messages
    3 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 580
    Points : 5 194
    Points
    5 194
    Par défaut
    merci ced600

    Pleins de bonnes idées

    Ouvre un projet sur sourceforge, et j'y participerais peut-etre

    The Monz, Toulouse

  6. #6
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 314
    Points
    13 314
    Par défaut
    Citation Envoyé par ced600 Voir le message
    "Qu'est ce que c'est que ce mot barbare ?"
    Tss.... tss.... encore un inculte qui a jamais lu Asterix.

    - "Organisons un symposium"
    - "Cela s'impose ô Cesar !"

  7. #7
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    Ha désolé il y longtemps que je ne les ai pas lus

    merci ced600

    Pleins de bonnes idées

    Ouvre un projet sur sourceforge, et j'y participerais peut-etre

    The Monz, Toulouse
    Quand je trouverais le courage pouquoi pas.

  8. #8
    Expert confirmé

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2006
    Messages
    3 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 580
    Points : 5 194
    Points
    5 194
    Par défaut
    salut

    et pour finir, un petit exemple avec une classe qui fait le boulot
    (j'ai eu la flemme de la mettre dans une librairie) mais bon... c'est pas complexe
    à faire...

    Je degage toute responsabilité en cas d'utilisation nocive

    The Monz, Toulouse
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. comment savoir si une session d'un utilisateur est active ?
    Par orman05 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 09/02/2013, 17h32
  2. Réponses: 0
    Dernier message: 26/05/2010, 15h23
  3. comment savoir si une table est lockée par un user
    Par zinabd dans le forum Oracle
    Réponses: 4
    Dernier message: 16/01/2009, 10h18
  4. Réponses: 5
    Dernier message: 10/04/2008, 10h37
  5. Comment savoir qu'une session est valide?
    Par clairette dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 21/02/2007, 19h57

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