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 :

problème session et timer


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2
    Par défaut problème session et timer
    Bonjour,
    J'ai développé deux pages view.aspx.cs, Pay.aspx.cs, et une classe MyTimer.cs.
    La page view doit créer un timer, et la page Pay.aspx.cs doit créer une variable session "EndTimer".
    MyTimer.cs doit arrêter le timer quand il détecte la variable session EndTimer (pe être il existe une technique plus simple sachant que mytimer.cs est une classe métier) crée par la page Pay.aspx.cs.

    ça ne fonctionne pas.

    Voici le code de mes différentes pages:

    View.aspx.cs:
    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    public partial class view : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            MyTimer mt = new MyTimer();
            mt.createTimer();
     
            object MonObjet = null;
            string IDvariable = "EndTimer";
            MonObjet = HttpContext.Current.Session[IDvariable];
     
        }
    My Timer.cs :
    Code C# : 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
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    public class MyTimer
    {
     
            private System.Timers.Timer aTimer;
            private static int nbit = 0;
     
            public MyTimer()
            {
     
            }
     
     
            public void createTimer()
            {
                // Create a timer with a ten second interval.
                aTimer = new System.Timers.Timer(500);
     
                // Hook up the event handler for the Elapsed event.
                aTimer.Elapsed += new ElapsedEventHandler(OnTimedEvent);
     
                // Only raise the event the first time Interval elapses.
                aTimer.AutoReset = true;
                aTimer.Enabled = true;
     
     
            }
     
            public void deleteTimer()
            {
                aTimer.Stop();
            }
     
            private void OnTimedEvent(object source, ElapsedEventArgs e)
            {
                object _value = null;
                try
                {
                    // Récupérer le contexte de la requête
                    HttpContext _context = HttpContext.Current;
     
                    // Accéder à l'objet intrinsèque Session
                    _value = _context.Session["EndTimer"];
                }
                catch (Exception excep)
                {
                }
                finally
                {
                    if (_value == null)
                    {
                        Debug.WriteLine("Hello World!" + nbit);
                        nbit = nbit + 1;
                    }
                    else
                    {
                        Debug.WriteLine("FIN TIMER!!!!!!!!!" + nbit);
                        deleteTimer();
                    }
                }
     
            }
     
    }
    Pay.aspx.cs
    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    public partial class Pay : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
     
            string IDvariable = "EndTimer";
            HttpContext.Current.Session.Add(IDvariable, "");
     
        }
    }

  2. #2
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Par défaut
    Ca peut pas marcher.
    Ton timer est un objet interne à ta page View, il sera détruit en même temps qu'elle

Discussions similaires

  1. [C# 2.0, Service]Problème service et Timer
    Par boleduch dans le forum Windows Forms
    Réponses: 1
    Dernier message: 25/04/2006, 15h00
  2. Problème session
    Par mLk92 dans le forum Langage
    Réponses: 7
    Dernier message: 24/03/2006, 13h17
  3. [MFC] Problème de Threads + Timers
    Par Invité dans le forum MFC
    Réponses: 8
    Dernier message: 30/11/2005, 10h51
  4. [Débutant]Problème avec les timers
    Par mickael777 dans le forum MFC
    Réponses: 1
    Dernier message: 11/04/2005, 11h00
  5. Problème session
    Par pete007 dans le forum ASP
    Réponses: 8
    Dernier message: 11/03/2004, 16h55

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