【发布时间】:2011-12-28 06:06:35
【问题描述】:
我正在尝试缓存一些数据对象,这些数据对象使用非常频繁,因此在加载数据库服务器时经常被查询。然而,这些并不会经常改变,这使得它们成为缓存的良好候选者。
但是,每当它们发生更改时,我确实希望更改尽快反映,因此我想到了使用 SqlCacheDependency。
SqlCacheDependency dependency = new SqlCacheDependency(cacheDependencyCmd);
dependency.OnChange += new OnChangeEventHandler(SqlDependency_OnChange);
但是,我在 Visual Studio 中收到以下错误
我检查并意识到人们似乎到处都在使用 SqlDependency 而不是 SqlCacheDependency。为什么 OnChange 事件被排除在 SqlCacheDependeny 之外?对性能不利吗?或者我只是在这里遗漏了一些非常基本的东西。
【问题讨论】:
-
好的,我现在的想法是它已经被忽略了,因为 ASP.NET 缓存有 ItemRemovedCallBack 并且应该编写代码来处理 Dependency.OnChange 的行为应该是当依赖项更改时,缓存会失效。有什么想法吗?
标签: c# asp.net caching sqlcachedependency