Question

J'utilise l'attribut OutputCache pour mettre en cache la sortie HTML de mon action côté serveur.

Bien, cela fonctionne, mais le contenu change rarement, mais il est essentiel que l'utilisateur voie les nouvelles données dès la demande suivante.

Alors, y a-t-il un moyen d'abandonner la durée du cache de pages par programme?

Était-ce utile?

Autres conseils

Vous pouvez étendre OutputCacheAttribute pour créer votre propre mécanisme de cache qui autorise une dépendance similaire à la mise en cache ASP.net d'origine.

Vous pouvez également utiliser HttpCachePolicy.AddValidationCallback () . L'idée générale est que, lorsque la page est rendue et insérée dans le cache, ce rappel est inséré avec la page. Lors de la récupération de la page à partir du cache, le rappel est appelé et permet de déterminer de manière définitive si la page en cache est périmée (et doit être démarrée) ou valide (et doit être servie). Voir la source AuthorizeAttribute pour un exemple. Si une page qui devient obsolète est vraiment rare, vous serez peut-être mieux servi par la méthode RemoveOutputCacheItem (), comme indiqué dans l'autre réponse.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top