5

Ich habe eine ASP.NET 4-basierte Website erstellt. Zuerst habe ich die Standard-Site ausgeführt, wie sie von Visual Studio ASP.NET 4 Internet Application-Vorlage generiert wurde. Ich habe gerade den Debug-Button gedrückt, und der IE wurde gestartet, es wurde mit http://localhost:1341/ verbunden und die Standard-Willkommensseite meiner Website geladen. Alles schien in Ordnung zu sein, also begann ich das Index.cshtml neu zu gestalten.Visual Studio ASP.NET-Entwicklungsserver zeigt immer wieder alte Seiten

Nach der Neugestaltung, startete ich die Website erneut. Und während der Navigation habe ich festgestellt, dass ich, wenn ich auf die Zurück-Schaltfläche des Browsers klicke, die zwischengespeicherte alte Version der ersten Seite erhalte und im Browser auf Aktualisieren klicke, um die neue Seite zu erhalten. So

Ich habe

<meta http-equiv="PRAGMA" content="NO-CACHE"> 

und

protected void Application_BeginRequest(object sender, EventArgs e) 
    { 
     // prevent caching 
     HttpContext.Current.Response.Cache.SetExpires(DateTime.UtcNow.AddDays(-1)); 
     HttpContext.Current.Response.Cache.SetValidUntilExpires(false); 
     HttpContext.Current.Response.Cache.SetRevalidation(HttpCacheRevalidation.AllCaches); 
     HttpContext.Current.Response.Cache.SetCacheability(HttpCacheability.NoCache); 
     HttpContext.Current.Response.Cache.SetNoStore(); 
    } 

auf meiner Website.

Dann löschte ich den IE-Cache mit IE-Optionen. Ich habe auch meinen Ordner Local \ Temp gesäubert.

Aber noch habe ich Ergebnis 304 in der IE-Entwickler-Tools-Registerkarte Netzwerk, wenn Sie auf die Schaltfläche Zurück im Browser klicken.

Die einzige Möglichkeit, die neue umgestaltete Seite zu erhalten, ist die Verwendung von Cache-> Immer vom Server aktualisieren. Ich könnte das für Entwicklungszwecke tun, aber es macht mir nur einen Strich durch die Rechnung - wo kommt diese alte Seite immer her, wenn ich zurückkomme?

Beim Debuggen erscheint in Visual Studio ein neues Baumelement im Projektmappen-Explorer. Dieser neue Artikel heißt Script-Dokumente. Darunter befindet sich ein Windows Internet Explorer Element, das localhost Element enthält ... und wenn ich es öffne - yeah, das ist die alte Seite, die zum IE kommt, wenn ich den Zurück Knopf drücke! Wo speichert Visual Studio (oder ASP.NET Dev Server) diese Seite "localhost"?

Wie entferne ich diese stecken gebliebene Seite und stoppe IE (oder vielleicht auch den ASP.Dev-Server) von Caching meiner localhost/Startseite? Wie lösche ich diese alte Seite für immer?

Ich hoffe, wird die neue Seite nicht die gleiche Art und Weise zwischengespeichert werden, weil ich ihm hinzugefügt ...

+0

hinzufügen Dies ist kein Code Problem; Es ist ein IE-Problem, und Sie kennen die Arbeit aufgrund Ihres Posts bereits. –

+2

Aber woher kommt diese alte Seite und warum erscheint sie sogar beim Debuggen in Visual Studio Solution? Ich putzte jeden Ort, den ich kenne (IE-Cache, Temp-Ordner), aber immer noch diese erste Seite ist irgendwo anders zwischengespeichert ... – JustAMartin

+0

Ich stimme zu. Und ich glaube nicht, dass dies ein einfaches IE-Problem ist. Es ist entweder ein Problem mit Cassini (löschte auch den Cache, aber das Problem tritt immer noch auf), Visual Studio oder IE im Debug-Modus. Es passiert nur im "Entwicklungsmodus" und nur wenn Sie die Zurück-Taste oder Ähnliches verwenden. Es ist die Art von Gotcha, die jeden Entwickler verrückt (mehr Nüsse). Ich möchte auch wissen, wo diese alte Kopie gespeichert ist, weil es wahrscheinlich helfen wird, es zu beheben. – Swanny

Antwort

0

<meta http-equiv="CACHE-CONTROL" content="NO-CACHE"/> 
<META HTTP-EQUIV="EXPIRES" CONTENT="Mon, 22 Jul 2002 11:12:01 GMT"> 
Verwandte Themen