2011-01-20 19 views
11

¿Cómo puedo almacenar en caché el resultado de las vistas parciales en ASp.NET MVC 3? Sé que puedo decorar la acción con [OutputCache] atributo pero lo que sólo quiero incluir la @OutputCache la derecha en el PartialView como se muestra a continuación:Caché de vistas parciales en ASP.NET MVC 3

@OutputCacheAttribute 

@model MvcApplication1.Models.someViewmodel 

@{ 
    ViewBag.Title = "Index"; 
} 

<h2>Index</h2> 



@Html.Partial("_MyPartialView") 

Respuesta

22

Esto no se puede hacer. Debe utilizar el ayudante Html.Action para renderizar una acción secundaria decorada con el atributo [OutputCache] y que representará el parcial.

public class MyController : Controller 
{ 
    [OutputCache(Duration = 3600)] 
    public ActionResult Index() 
    { 
     return View(); 
    } 
} 

y luego incluir el parcial:

@model MvcApplication1.Models.someViewmodel 
@{ 
    ViewBag.Title = "Index"; 
} 
<h2>Index</h2> 
@Html.Action("Index", "My") 
+2

Tres años más tarde, es posible que esto ya? –

Cuestiones relacionadas