web-dev-qa-db-fra.com

Actualiser une page asp.net en cliquant sur un bouton

Je dois actualiser une page en cliquant sur un bouton sans augmenter le nombre de résultats.

8
VimalSingh
  • Créer une classe pour maintenir les compteurs de coups

    public static class Counter
    {
           private static long hit;
    
           public static void HitCounter()
           {
              hit++;
           }
    
           public static long GetCounter()
           {
              return hit;
           }
    }
    
  • Incrémente la valeur de compteur lors d'un événement de chargement de page

    protected void Page_Load(object sender, EventArgs e)
    {
        Counter.HitCounter(); // call static function of static class Counter to increment the counter value
    }
    
  • Redirige la page sur lui-même et affiche la valeur du compteur en cliquant sur le bouton

    protected void Button1_Click(object sender, EventArgs e)
    {
        Response.Write(Request.RawUrl.ToString()); // redirect on itself
        Response.Write("<br /> Counter =" + Counter.GetCounter() ); // display counter value
    }
    
5
SiwachGaurav

Que sur code derrière redirige vers la même page.

Response.Redirect(Request.RawUrl);
32
Ishan Jain

Vous pouvez faire Response.redirect("YourPage",false) pour actualiser votre page et augmenter le compteur.

2
Bibek Gautam

Lorsque vous dites d'actualiser la page, sa nouvelle instance de la page que vous créez, vous devez disposer d'un static variable/session variable ou d'une method pour stocker et récupérer le nombre de hits sur votre page.

En ce qui concerne l'actualisation de la page, Response.Redirect(Request.RawUrl); ou window.location=window.location ferait le travail à votre place.

1
Vinay Pandey

Cliquez sur le bouton pour essayer ce qui suit.

protected void button1_Click(object sender, EventArgs e)
{
     Response.Redirect("~/Admin/Admin.aspx");
}

Et sur PageLoad, vous pouvez vérifier si le chargement provient de ce bouton puis augmenter le nombre.

       protected void Page_Load(object sender, EventArgs e)
         {
            StackTrace stackTrace = new StackTrace();
            string eventName = stackTrace.GetFrame(1).GetMethod().Name; // this will the event name.
            if (eventName == "button1_Click")
              {
                // code to increase the count;
              }
          }

Merci

1
Saritha.S.R

Le rechargement de page peut être fait en utilisant du code javascript. Utilisez un bouton HTML et implémentez-le comme ...

<input type="button" value="Reload Page" onClick="document.location.reload(true)">
0
Pushpendra