2010-05-07 7 views
12

J'utilise OutputCache dans une application ASP.net MVC. Comme le développement avec un OutputCache actif n'est pas très agréable, je veux désactiver le OutputCache sur les systèmes de développement (machines locales et serveur de développement).Désactiver OutputCache sur le système de développement

Quelle est la meilleure façon de faire cela?

+0

Une nouvelle question en double est venu avec une réponse intéressante pour la situation lorsque vous voulez modifier la mise en cache de sortie, mais pas tous: [utiliser les profils de cache] (http://stackoverflow.com/questions/4662424/bypass-outputcache-in-asp-net -MVC/4665245 # 4665245). – patridge

Répondre

14

Il est un ancien mais ...

ensemble dans votre web.config sous system.web

<caching> 
    <outputCache enableOutputCache="false" /> 
</caching> 
+0

Cela ne devrait-il pas être faux au lieu de vrai? – ashes999

+0

Oui, corrigé. merci –

+0

@TonyBasallo Cela ne fonctionne vraiment pas sur IIS Express 8.Pourquoi? – Freshblood

8

Le OutputCache dans ASP.NET peut être activé et désactivé à l'aide

pour les versions iis < 7,0

<system.web> 
    <caching> 
     <outputCache enableOutputCache="false" /> 
    </caching> 
</system.web> 

pour les versions iis> = 7.0

<system.webServer> 
    <caching enabled="false" /> 
</system.webServer> 

N.B. J'utilise généralement les deux, mieux vaut prévenir que d'avoir mal aux pieds, et utiliser une transformation config pour m'assurer que la mise en cache est activée pour différentes configurations lors de la publication. Dans ma solution une configuration correspond 1 sur 1 avec un environnement

Une autre technique consiste à utiliser pragma pour permettre des morceaux de code à compiler ou compilent ne repose pas sur-à-dire le symbole de compilation conditionnelle DEBUG:

#if DEBUG 
    [OutputCache] 
#endif 
+1

La version pre IIS 7 est nécessaire pour IIS Express 8 –

+0

Ces deux exemples (avant et après IIS7) ont des fonctionnalités différentes. L'exemple dans '' est pour ASP.NET OutputCache (https://docs.microsoft.com/en-us/iis/configuration/system.webserver/caching/). L'exemple de '' est pour la mise en cache de réponse IIS intégrée (https://docs.microsoft.com/en-us/iis/configuration/system.webserver/caching/). Le cache IIS est interopérable avec OutputCache. – Bago

Questions connexes