0

我正在编写一个包含许多高级实用程序类的 dll,其他开发人员将在他们的应用程序中使用和使用。

目前我正在研究一个类的实现,它必须利用大字符串的本地缓存,否则它会很慢。

是否有一个统一的缓存存储位置,我可以将我的superclass.cache文件放入(从我的将进入 dll 的代码中),它可以在任何 .net 应用程序(asp.net 也)中工作?

例如,我见过为 ASP.Net 编写库的人只是AppData为此目的使用文件夹。但是,如果我的库在 WPF 应用程序中被引用,则不会有 AppData 文件夹。更糟糕的是,它可能在不允许从代码写入磁盘的环境中运行。

这给我们带来了一个问题——要求用户启用缓存,如果是的——唯一的(最好的)选项在哪里?

更新:现在当我想到 Windows Phone 与它的隔离存储一起使用时,我最好只提供一个ICacher接口,让人们实现它以使其具有通用性。

4

1 回答 1

1

假设这是 .Net 4.0,System.Runtime.Caching命名空间可用;这有一个MemoryCache类 ( MSDN ),它是一个类似于 ASP.NET 缓存但不依赖于 System.Web 程序集的缓存类。作为 System.Runtime 的一部分,它应该可用于所有类型的应用程序。

于 2012-03-18T21:31:57.227 回答