我有一个方法返回一个复杂的JSON对象。这是一个沉重的处理方法,我试图将其存储在缓存中,并将其保留在那里,直到对其对象进行修改。缓存不能在客户端上处理JSON响应
[HttpPost]
[OutputCache(Duration=50, Location = OutputCacheLocation.Client, VaryByParam="none", NoStore = false)]
public ActionResult CacheTest()
{
//retrieves data from database
var data = DBContext.GetUserLog();
return Json(new { userLog = data});
}
设置Location = OutputCacheLocation.Client
和VaryByParam = 'none'
是行不通的。如果我设置Location = OutputCacheLocation.ServerAndClient
,则响应会被正确缓存。
OutputCache不在客户端存储JSON信息的任何原因?
客户端存储(Cookie和本地存储)在数据容量方面受到限制。您是希望在每次请求后还是持续存在,或者只是当用户在页面上时? – Paul 2012-03-30 18:43:03
这将是很好的坚持任何数量的请求后,但在有限的时间。但是,我可以管理它保持在同一页面上。 – AdrianoRR 2012-04-02 12:21:44