J'ai un paramètre de routage dans mon fichier global.asax:Exclure les paramètres de routage dans VaryByParam pour Asp.Net 4
routes.MapPageRoute("video-browse", "video/{id}/{title}/", "~/routeVideo.aspx");
Ma page routeVideo.aspx a mise en cache:
<%@ OutputCache Duration="10" Location="ServerAndClient" VaryByParam="id" %>
Mais quand Je demande http://localhost/video/6/example1 et http://localhost/video/6/example2 après cela, la page est créée à nouveau. Donc je pense que VaryByParam fonctionne pour * mais je ne veux que compiler quand l'identifiant change. Y at-il un moyen de définir les paramètres de routage à VaryByParam?
Je veux cela parce que le paramètre de titre n'est pas important pour moi. Il est là seulement pour les moteurs de recherche et il n'est pas utilisé dans mon code.
@Dewfy Mais je veux l'URL comme localhost/vidéo/someID/any-titre. Aussi, je reçois les paramètres de routage de cette façon: Page.RouteData.Values ["id"] –
@HasanGursoy alors à la place de VaryByParam, utilisez VaryByCustom. Le dernier vous donne la possibilité d'écrire sa propre méthode pour former la clé du système de cache. – Dewfy