1

Ich habe eine Website mit MVC2 + Entity2Sql als DB-Backend geschrieben. Ich benutze den jQuery-Dialog, um Datensätze zu bearbeiten und sie mit einer Aktion zu füllen, die PartialView zurückgibt, aber nach dem ersten Aufruf gibt diese Aktion die Ansicht mit alten Daten mit der HTTP-Antwort 304 Not Modified zurück.Cache für aspnet mvc2 Website deaktivieren

Ich überprüfte Protokolle - Daten von der DB korrekt abgerufen, so Problem mit dem Cache auf der Client-Seite - nach dem Löschen der Cache-Daten erhalten ok.

I durchgeführt folgende Aktionen Cache zu deaktivieren, aber ohne Erfolg:

hinzugefügt web.config folgenden Code, deaktivieren Sie auf Server-Seite:

<caching> 
    <outputCache enableOutputCache="false" enableFragmentCache="false" /> 
</caching> 

Added Code Site.Master, deaktivieren auf den Client-:

<meta http-equiv="expires" content="-1" /> 
<meta http-equiv="pragma" content="no-cache" /> 
<meta http-equiv="cache-control" content="no-cache" /> 

Hinzugefügt Attribut Methode, die returs PartialContent Ergebnis gleiche wie 1. - Server-Seite:

[OutputCache(Duration = 0)] 

Added "*" Erweiterung mit 'Dont Cache' in IIS Ausgabe-Cache-Einstellung für meine Anwendung (mit IIS7)

Alle diese Methoden nicht für mich arbeiten, devtools für IE zeigt immer noch die Antwort nicht 200, sondern 304

+1

Haben Sie versucht, '[OutputCache (Location = OutputCacheLocation.None)]' '? Dies würde ich normalerweise verwenden. – tvanfosson

Antwort

-1

Versuchen:

[OutputCache(NoStore = true, Duration = 0, VaryByParam = "*")] 

Für mich funktioniert es.

+0

Dauer kann nicht Null sein. –