Mise en cache J'utilise OutputCache sur une action comme celle-ci:Problème avec ASP .Net MVC 2.0
[OutputCache(Duration = 14400, VaryByParam = "none")]
public ContentResult Catalog()
{
return ...;
}
et ma fonction RegisterRoutes en Global.asax.cs contient la route:
routes.MapRoute(
"XMLRoute", // Route name
"{site}/catalog.xml", // URL with parameters
new { controller = "Home", action = "Catalog" } // Parameter defaults
);
Le Cartes de route urls comme:
- example.com/site1/catalog.xml
- exemple. com/site2/catalog.xml
- example.com/whatever/catalog.xml
à l'action de catalogue.
Je crois que le résultat attendu serait de retourner le contenu statique après la première demande pour chaque paramètre passé, mais le contenu n'est pas mis en cache correctement. Dois-je modifier l'action Catalogue pour utiliser un paramètre, puis spécifier VarybyParam = "none" et ajouter un paramètre avec UrlParameter.Optional à la fonction MapRoute ou y a-t-il quelque chose d'autre qui se passe ici?
Pouvez-vous élaborer sur «le contenu n'est pas mis en cache correctement»? Quels résultats voyez-vous, et en quoi diffèrent-ils exactement de vos attentes? – bzlm
Désolé, je devrais être plus clair à ce sujet. Ce que je veux dire, c'est que le contenu n'est pas récupéré du cache, il est créé à nouveau pour chaque requête. – gmakrygiannis