2011-10-07 16 views
9

Ho impostato OutputCache per includere "VaryByContentEncodings =" gzip "" nella mia pagina ASP ASP ASP. Voglio che la pagina serva diversi file css, un gzip se il browser lo supporta e il normale non è compresso se il browser non supporta la compressione.OutputCache VaryByContentEncodings gzip non funziona

Esempio:

<%@ OutputCache Duration="320" VaryByParam="none" VaryByContentEncodings="gzip" %> 

Quando eseguo il codice ottengo il seguente errore:

L'attributo 'varybycontentencodings' non è supportato dalla direttiva 'OutputCache' in una pagina.

Non so qual è il problema e perché non funziona. Secondo, pensi che servendo diversi file CSS/non compressi sto facendo la cosa giusta. Basta notare che i file vengono forniti da Amazon S3, quindi non posso fare affidamento su IIS o .NET engine per restituire automaticamente i file compressi. Ecco perché voglio servire per separare la versione cache della pagina.

In questo sembra essere ok, ma non funziona (utilizzando ASP.NET 4.5):

http://msdn.microsoft.com/en-us/library/system.web.httpcachevarybycontentencodings.aspx

Aiuto sarebbe molto apprezzato.

risposta

4
  • Quale versione è il pool di applicazioni in esecuzione?
  • La direttiva è presente in una pagina, controllo o nella pagina principale ?

VaryByContentEncodings is introduced in the .NET Framework version 3.5.

HttpCachePolicy.VaryByContentEncodings Property

+0

numero di versione 4 –

1

Ho appena avuto esattamente lo stesso problema. Il problema è: Visual Studio Intellisense ti suggerisce un nome di attributo errato. Quello corretto è "VaryByContentEncoding" - senza la "s" alla fine.

corretta:

<%@ OutputCache ... VaryByContentEncoding="gzip" %> 

errato:

<%@ OutputCache ... VaryByContentEncodings="gzip" %> 
Problemi correlati