2008-11-13 5 views
13

Ich habe die obige Fehlermeldung nach dem Anwenden des OutputCache-Attributs auf ActionResult-Methoden ohne Eingabeparameter - warum würde ich VaryByParams in diesem verwenden Fall? Ist das ein Fehler in ASP.Net MVC oder gibt es eine Möglichkeit, OutputCache zu verwenden, ohne diese Eigenschaft festzulegen?ASP.Net MVC-Ausgabe-Caching: Die Direktive oder das Konfigurationseinstellungsprofil muss das "varyByParam" -Attribut angeben

Meine große Frage ist, wenn ich VaryByParams verwenden soll, was soll ich für einen Wert eingeben, wenn ich keine Parameter zum Cache habe?

Antwort

25

Ich habe nie eine befriedigende Antwort dafür gefunden - im Grunde müssen Sie nur die VaryByParams Eigenschaft hinzufügen und wenn Sie keine Parameter haben, setzen Sie es auf die magische Zeichenfolge "none".

http://msdn.microsoft.com/en-us/library/system.web.ui.outputcacheparameters.varybyparam.aspx

+9

Keine leere Zeichenfolge. Wenn laut MSDN keine Parameter verwendet werden sollen, sollte der Wert von VaryByParam "none" lauten: http://msdn.microsoft.com/en-us/library/system.web.ui.outputcacheparameters.varybyparam.aspx – bzlm

+3

Ah, das ist nützlich zu wissen - ich denke, das ist das Problem mit guten alten Zauberfolgen, wie? –

+3

Verrücktes Zeug - was ist, wenn du einen URL param namens 'none' hast? – coalvilledave

Verwandte Themen