我有一個方法返回一個複雜的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