Estoy tratando de usar perfiles de caché para almacenar en caché las acciones secundarias en mi aplicación mvc, pero recibo una excepción: la duración debe ser un número positivo.Caché ChildActions utilizando perfiles de caché no funcionará?
Mi web.config se ve así:
<caching>
<outputCache enableOutputCache="true" />
<outputCacheSettings>
<outputCacheProfiles>
<add name="TopCategories" duration="3600" enabled="true" varyByParam="none" />
</outputCacheProfiles>
</outputCacheSettings>
</caching>
Y mi acción hijo algo como esto:
[ChildActionOnly]
[OutputCache(CacheProfile = "TopCategories")]
//[OutputCache(Duration = 60)]
public PartialViewResult TopCategories()
{
//...
return PartialView();
}
Dentro de una vista que acabo de llamar @Html.RenderAction("TopCategories", "Category")
pero me da un error : Detalles de la excepción: System.InvalidOperationException: la duración debe ser un número positivo.
Si no uso el perfil de caché, funciona. ¿Tienes una idea de cuál es el problema?
Gracias por su respuesta :) – frennky
He aquí un buen artículo que explica este problema: http://www.dotnetcurry.com/ShowArticle.aspx?ID=665 – frennky
He arreglado esto y presenté una solicitud de extracción de hoy: http://aspnetwebstack.codeplex.com/SourceControl/network/forks/ssmith/OutputCacheAttributeBugfix/contribution/4100 así como escribir un artículo sobre cómo solucionarlo tú mismo (a través de una solicitud de extracción) además de solo comentarlo en SO: http://ardalis.com/how-to-contribute-to-aspnet-yourself – ssmith