我在包含用户控件的页面上使用 Asp.net OutputCache,在某些情况下,当编辑用户控件时,我希望能够使页面缓存过期并使用新数据重新加载页面。
有什么办法可以从用户控件中做到这一点?
如果没有,还有哪些其他缓存页面的方法可以让我以这种方式进行编辑。
- - - - - - 编辑 - - - - - -
经过更多研究,我发现了一种似乎效果很好的方法。
Dim cachekey As String = String.Format("Calendar-{0}", calendarID)
HttpContext.Current.Cache.Insert(cachekey, DateTime.Now, Nothing, System.DateTime.MaxValue, System.TimeSpan.Zero, System.Web.Caching.CacheItemPriority.NotRemovable, Nothing)
Response.AddCacheItemDependency(cachekey)
这将为页面缓存对象添加一个依赖项,然后过期我这样做:
Dim cachekey as string = String.Format("Calendar-{0}", CalendarID)
HttpContext.Current.Cache.Insert(cachekey, DateTime.Now, Nothing, System.DateTime.MaxValue, System.TimeSpan.Zero, System.Web.Caching.CacheItemPriority.NotRemovable, Nothing)
现在只要知道依赖缓存键,页面就可以过期。