2009-09-08 15 views
1

Lorsque vous utilisez la directive @OutputCache, vous pouvez définir des profils de cache comme suit web.config:Est-ce que ASP.NET outputCacheProfiles peut être utilisé avec Response.Cache?

<system.web> 
    <caching> 
    <outputCacheSettings> 
     <outputCacheProfiles> 
     <add name="myprofile" duration="30" enabled="true" varyByParam="myfield"/> 
     </outputCacheProfiles> 
    </outputCacheSettings> 
    </caching> 
</system.web> 

Cependant, dans mon application, j'ai quelques pages qui ont besoin d'utiliser la mise en cache de programmation au lieu de par exemple déclarative:

Est-il possible d'utiliser Response.Cache et de tirer parti des outputCacheProfiles?
Response.Cache.SetExpires(DateTime.Now.AddSeconds(5)); 
Response.Cache.SetCacheability(HttpCacheability.Public); 
Response.Cache.SetValidUntilExpires(true); 

Par exemple,

Response.Cache.ApplyCacheProfile("myprofile"); 

Répondre

0

Eh bien la propriété cacheability est appelé emplacement afin que vous ne avez pas besoin de définir cette programatically, comme pour l'autre pourquoi ne pas essayer juste et voir?

+0

Mon appel à ApplyCacheProfile() était juste pseudo code. La méthode n'existe pas. Je demande si une telle méthode existe. – frankadelic

0

à MVC, vous pouvez utiliser des attributs sur les contrôleurs [OutputCache(CacheProfile = "myprofile")]

Questions connexes