我是创建应用程序菜单的部分页面.我使用renderaction调用菜单部分视图.我想通过这样做在客户端存储这个部分页面
[OutputCache(Duration=7200, Location =OutputCacheLocation.Client, NoStore= true)]
但我收到以下错误
OutputCacheAttribute for child actions only supports Duration, VaryByCustom, and VaryByParam values. Please do not set CacheProfile, Location, NoStore, SqlDependency, VaryByContentEncoding, or VaryByHeader values for child actions
任何替代
最佳答案 客户端缓存不适用于MVC 3中的部分.客户端浏览器只接收HTML,“部分”仅存在于服务器端.
为什么不使用服务器端缓存?
当菜单内容取决于用户时,您可以将相关用户信息添加到子操作的参数中.例如:
[OutputCache(Duration=7200, VaryByParam="*")]
public PartialViewResult Menu(int userId)
{
...
}