gpt4 book ai didi

.net - dotnet System.Web.Caching.Cache 与 System.Runtime.Caching.MemoryCache

转载 作者:行者123 更新时间:2023-12-02 23:45:24 30 4
gpt4 key购买 nike

我有一个类需要在缓存中存储数据。最初我在 ASP.NET 应用程序中使用它,所以我使用了 System.Web.Caching.Cache。

现在我需要在 Windows 服务中使用它。现在,据我了解,我不应该在非 asp.net 应用程序中使用 asp.net 缓存,因此我正在研究 MemoryCache。

问题是它们不兼容,所以要么我在 asp.net 应用程序中更改为使用 MemoryCache,要么我需要创建一个适配器,以确保两个缓存实现具有相同的接口(interface)(可能从 ObjectCache 派生)并在内部使用 asp.net 缓存?)

在 ASP.NET 中使用 MemoryCache 有何影响?

纳达夫

最佳答案

我会选择你的第二个选择并稍微重构一下。我将创建一个接口(interface)和两个提供程序(它们是您的适配器):

public interface ICachingProvider
{
void AddItem(string key, object value);
object GetItem(string key);
}

public AspNetCacheProvider : ICachingProvider
{
// Adapt System.web.Caching.Cache to match Interface
}

public MemoryCacheProvider : ICachingProvider
{
// Adapt System.Runtime.Caching.MemoryCache to match Interface
}

关于.net - dotnet System.Web.Caching.Cache 与 System.Runtime.Caching.MemoryCache,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3882733/

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