gpt4 book ai didi

ASP.Net AppFabric 缓存缺少 Flush/Clear 和 Count/GetCount 方法?

转载 作者:行者123 更新时间:2023-12-04 11:15:37 25 4
gpt4 key购买 nike

我正在尝试将使用 EntLib 的解决方案转换为使用 AppFabric 缓存。借助一些扩展方法,这是一个相当轻松的过程。

我使用的扩展方法:

public static bool Contains(this DataCache dataCache, string key)
{
return dataCache.Get(key) != null;
}

public static object GetData(this DataCache dataCache, string key)
{
return dataCache.Get(key);
}

但是我发现 EntLib 有两个特性很难转换。即“计数”(计算缓存中的键数)和“刷新”(从缓存中删除所有数据)。如果我可以迭代缓存中的键,两者都可以解决。

有一个方法叫 ClearRegion(string region) ,但这需要我在我使用的所有 Get/Put/Add 方法上指定一个区域名称,这需要一些容易出错的手动工作。

有没有办法获取缓存中的键列表?
是否有我可以使用的默认区域名称?
未使用区域名称时如何刷新缓存?

最佳答案

my previous answer我推测当您不指定区域时缓存在内部如何工作,以及如何获取不在命名区域中的对象的数量。

我们可以使用相同的技术构建 Flush 方法:

public void Flush (this DataCache cache)
{
foreach (string regionName in cache.GetSystemRegions())
{
cache.ClearRegion(regionName)
}
}

正如我在那里所说的那样,我认为命名区域可能是要走的路 - 在我看来,使用它们解决的问题多于它产生的问题。

关于ASP.Net AppFabric 缓存缺少 Flush/Clear 和 Count/GetCount 方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4691538/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com