我需要手动清除sqlDataSource缓存启用缓存.我已经尝试设置EnableChaching = false,CacheDuration = 0(以及= 1),并且似乎没有过期缓存中的内容,尽管它们似乎阻止新的SELECT被缓存.
如何手动过期该缓存?
谢谢.
解决方法
我今天刚开始研究这个帖子,看到这个最好的解决方案:
Simple way to invalidate SqlDataSource cache programmatically
<asp:sqlDataSource ID="x" EnableCaching="True" CacheKeyDependency="MyCacheDependency"/> protected void Page_Load(object sender,EventArgs e) { // Or somewhere else before the DataBind() takes place if (!IsPostBack) { //prime initial cache key value if never initialized if (Cache["MyCacheDependency"] == null) { Cache["MyCacheDependency"] = DateTime.Now; } } } // evict cache items with an update in dependent cache: Cache["MyCacheDependency"] = DateTime.Now;
原文地址:https://www.jb51.cc/csharp/93907.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。