C# MemoryCache内存项目无法缓存

neighbornet neighbornet 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
.NET4.0新增的System.Runtime.Caching,
希望使用其中的MemoryCache,缓存内存中的变量,并在该变量变化时,进行相应更新。

使用下面的代码进行测试,发现cache中一直没有想要的"cachedText",请教各位大侠,应如何解决此问题,多谢!

private void button2_Click(object sender, RoutedEventArgs e)
{
ObjectCache cache = MemoryCache.Default;

bool flag = cache.Contains("cachedText");
string content = cache["cachedText"] as string;

if (content == null)
{
CacheItemPolicy policy = new CacheItemPolicy();
policy.AbsoluteExpiration = DateTimeOffset.Now.AddHours(1);

content = textBox2.Text;

CacheItem item =new CacheItem("cachedText", content);


List<string> keys = new List<string> { "cachedText" };

policy.ChangeMonitors.Add(cache.CreateCacheEntryChangeMonitor(keys));

cache.Set(item, policy);
}

textBox1.Text = content;
}
...全文

相关推荐

评论 8
收藏 已收藏
分享
返回顶部
neighbornet
C# 111,128 成员 642,536 内容