Je tente de mettre en cache un appel à une méthode d'action dans ASP.NET MVC3 RC1.Mise en cache d'un appel à Html.Action
La mise en cache fonctionne, mais la variation par paramètre ne semble pas s'améliorer. Y at-il quelque chose que je peux faire pour que les 3 appels à HotOffers retournent des résultats différents en fonction de productID?
La sortie est en ce moment
offres Hot 4
Offres Hot 4
offres Hot 4
Je veux que la sortie soit
offres Hot 4
Offres Chaudes 6
Hot 8 offres
Action
[OutputCache(Duration = 100, VaryByParam = "productId")]
public PartialViewResult HotOffers(int productId)
{
ProductModel model = new ProductModel { ProductID = productId };
model.Name = "Meatball";
return PartialView(model);
}
page (Index.cshtml)
@{
View.Title = "Home Page";
}
<p>
<div>
@Html.Action("HotOffers", new { productid=4})
</div>
<div>
@Html.Action("HotOffers", new { productid=6})
</div>
<div>
@Html.Action("HotOffers", new { productid = 8 })
</div>
</p>
partielle (HotOffers.cshtml)
Hot offers
@Model.ProductID
Cela est dû à une mauvaise conception de la fonctionnalité dans MVC 3 RC. Un correctif a déjà été vérifié dans le produit et devrait être disponible à la prochaine version. – Levi