我一直在對網站進行一些更改,並注意到當我在數據庫中進行更改時,即。添加新的人物價值,該人物的名字不會出現在下拉列表中。瞭解HttpContext.Current.Cache
如果我重置應用程序池幾次,名字終於出現在我身上。雖然對其他人來說似乎並不總是如此。
它似乎被緩存嚴格的控制,我已經找到了以下內容:
HttpContext.Current.Cache.Insert("PersohnList", d, Nothing,
DateTime.MaxValue, New System.TimeSpan(0, 30, 0),
Caching.CacheItemPriority.High, Nothing)
我在這裏感興趣注意到了一些值,
a) DateTime.MaxValue
b) New System.TimeSpan(0, 30, 0)
將緩存過期在30分鐘後插入新的人的姓名或將由於DateTime.MaxValue而不會過期。
任何想法?
你是否明確緩存列表?我不認爲它默認緩存。它最初是如何初始化的?如果它被填充,讓我們說Page_Load,然後在每次刷新/新建會話時它都會進行數據庫調用。如果你將它保存在服務器端的某個地方,這是一個完全不同的問題。 – PoweredByOrange 2014-11-20 17:08:33
您是否閱讀過[插入](http://msdn.microsoft.com/zh-cn/library/05kd8d77(v = vs.110).aspx)的MSDN頁面?另外,它在應用程序池的多次重置中仍然存在,這聽起來像您的問題緩存在客戶端而不是服務器端。 – 2014-11-20 17:10:11