2012-09-10 3 views
5

Ich hatte asp.net Formular App Ich habe einen Fehler, wenn der Benutzer F5 klicken oder aktualisieren wird es die Daten aus der letzten Dateneingabe eingeben. Ist sie weg zu verhindern Daten senden, wenn Benutzer klicken Sie auf F5 oder aktualisieren?Wie kann verhindert werden, dass Daten gesendet werden, wenn der Benutzer F5 drückt oder in asp.net aktualisiert?

+1

@aelnajjar zumindest hier vor sehen! http://StackOverflow.com/questions/3759572/avoid-form-re-submit und http://StackOverflow.com/questions/2526568/asp-net-prevent-form-submission-twice das wurde so oft gefragt ! –

Antwort

11

Es ist einfach, eine Seite in ASP.NET in den Ausgangszustand zurückzusetzen, indem Sie zu sich selbst umleiten. Hier sind 3 Möglichkeiten, wie Sie es tun können:

  1. Response.Redirect (Request.Path);

, in dem der Pfad zu der Anforderung in der folgenden Form dargestellt wird: /MyApp/MyFile.aspx

  1. Response.Redirect (Request.RawUrl);

In denen ist nicht nur der Weg freigelegt, sondern auch alle Abfragezeichenfolgeflag Parameter wie: /MyApp/MyFile.aspx?foo=bar

  1. Response.Redirect (Request.Url.ToString());

in dem nicht nur der Pfad und Abfragezeichenfolgeflag Parameter ausgesetzt, sondern als absolute Referenz in der Form zur Verfügung gestellt: MyServer/MeineAnw/MyFile.aspx foo = bar

1

Es gibt mehrere Möglichkeiten, dies zu verhindern. Am einfachsten ist es, Response.Redirect auf eine andere Seite, die ohne Folgen aufgefrischt werden kann.

// process form post 
Response.Redirect("anotherpage.aspx"); 
Verwandte Themen