2013-07-22 27 views
8

Muszę odświeżyć stronę po kliknięciu przycisku bez zwiększania licznika trafień.Odśwież stronę asp.net na przycisku kliknij

+0

dlaczego to bzdury qns.i po prostu pytam, że nie chcę zwiększać licznika trafień podczas odświeżania strony po kliknięciu przycisku. – VimalSingh

+0

Tak, moje pytanie nie zostało poprawnie utworzone .i również wklei mój kod. – VimalSingh

+0

Twoje "proste pytanie" jest dla kogoś, kto zrobi to za ciebie bez żadnej pracy z twojej strony, aby pokazać im, co masz/próbowałeś do tej pory. Właśnie dlatego byłeś jęczony. Stworzyłeś pytanie bez dodawania żadnego kodu. SO nie jest tutaj po to, by wykonywać swoją pracę za Ciebie, ale aby wspierać Cię jako najlepszego programistę, którym możesz być. Sop nie stresuj się, po prostu napisz więcej szczegółów na swoje pytanie i pokaż nam, co wypróbowałeś do tej pory. –

Odpowiedz

5
  • Utwórz klasę dla utrzymania hit counters

    public static class Counter 
    { 
         private static long hit; 
    
         public static void HitCounter() 
         { 
          hit++; 
         } 
    
         public static long GetCounter() 
         { 
          return hit; 
         } 
    } 
    
  • zwiększamy wartość licznika w przypadku obciążenia strona

    protected void Page_Load(object sender, EventArgs e) 
    { 
        Counter.HitCounter(); // call static function of static class Counter to increment the counter value 
    } 
    
  • Przekierowanie strony na siebie i wyświetlać wartość licznika na przycisku kliknij

    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 
    } 
    
2

Możesz zrobić Response.redirect("YourPage",false), który odświeży twoją stronę, a także zwiększy licznik.

+0

, ale zwiększy to również licznik trafień i nie chcę zwiększać licznika trafień podczas odświeżania – VimalSingh

0

Przeładowanie strony można wykonać za pomocą kodu javascript. Użyj przycisku HTML i zaimplementuj go tak, jak ...

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

Po kliknięciu przycisku możesz wypróbować następujące elementy.

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

I na PageLoad można sprawdzić, czy ładowanie pochodzi z tego przycisku, a następnie zwiększyć liczbę.

 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; 
       } 
      } 

Dzięki

27

że w kodzie za przekierowanie do tej samej strony.

Response.Redirect(Request.RawUrl); 
1

Kiedy mówisz odśwież stronę, jej nowa instancja strony, którą tworzysz, więc trzeba albo mieć static variable/session variable lub method do przechowywania i pobierania liczby trafień na Twojej stronie.

Jeśli chodzi o odświeżanie strony, Response.Redirect(Request.RawUrl); lub window.location=window.location wykona to za Ciebie.

Powiązane problemy