C#:谈论缓存时什么是键
本文关键字:什么 缓存 | 更新日期: 2023-09-27 17:55:58
我对c sharp没有太多经验。我被指派实现缓存功能。我正在查看一些代码,我不知道"key"和"dependsOnKey"指的是什么。
public void Add(string key, object o, DateTimeOffset expiration, string dependsOnKey = null)
{
var cachePolicy = new CacheItemPolicy
{
AbsoluteExpiration = expiration
};
if (!string.IsNullOrWhiteSpace(dependsOnKey))
{
cachePolicy.ChangeMonitors.Add(
Cache.CreateCacheEntryChangeMonitor(new[] { dependsOnKey })
);
}
lock (Cache)
{
Cache.Add(key, o, cachePolicy);
}
}
public void Add(string key, object o, string dependsOnKey = null)
{
DateTimeOffset dt = DateTimeOffset.Now.AddMinutes(20);
Add(key, o, dt, dependsOnKey);
}
在缓存的上下文中,键是什么意思?我了解缓存的概念。我查找了一些教程,但大多数都有不同的缓存实现。
简单地说,它是一个字符串标识符,而不是你可以在其他地方读取相同的数据,又名:Cache.Get Method (String key)
MSDN 中的更多信息
请注意:
应用程序缓存中的项存储在键/值对中。钥匙 依赖项允许一个项目依赖于另一个项目的键 在应用程序缓存中。删除原始项目时,该项目 具有密钥依赖项的也会被删除。例如,您可以 添加一个名为 ReportsValid 的缓存项,然后缓存多个报表 依赖于报告有效键。当"报告有效"项时 删除,所有依赖缓存报表也同样删除 从缓存中。
另外,值得一看的是:ASP.NET 缓存的模式和最佳实践是什么?