作者: Scott 答应了。
将System.Web添加到非web项目是一种让人们恐慌的好方法。另一个是在Microsoft.VisualBasic应用程序中添加对C#的引用。不过,两者都是合理的,也是非常有用的。
MSDN 说不.
缓存类不适合在ASP.NET应用程序之外使用。它是为在ASP.NET中使用来为Web应用程序提供缓存而设计和测试的。在其他类型的应用程序中,例如控制台应用程序或Windows应用程序,ASP.NET缓存可能无法正常工作。
那我该怎么想?
发布于 2010-05-05 08:08:48
我知道这个问题很古老,但为了帮助任何通过搜索找到这个问题的人,值得注意的是,.net v4为这类场景提供了一个新的通用缓存。它位于System.Runtime.Caching命名空间中:
https://msdn.microsoft.com/en-us/library/dd997357(v=vs.110).aspx
对默认缓存实例的静态引用是: MemoryCache.Default
发布于 2008-10-01 17:23:05
使用HttpRuntime.Cache不存在任何问题。它是一个复杂的内存中哈希表,在web上下文之外非常有用。不过,在一个非Http相关的应用程序中引用HttpRuntime.Cache可能有点代码味道,所以最好将它封装在ICache接口后面,并尽可能地使用它。
发布于 2008-10-01 17:22:29
要记住的一件事是,微软已经发布了一个.NET框架客户端配置文件设置包。这是针对客户端应用程序的3.5框架的一个版本,并且减少了占用空间。客户端配置文件不包括框架的ASP.NET部分。
如果应用程序依赖于System.Web,它将阻止应用程序利用客户端配置文件。
有关更多详细信息,请参阅司各特的博客。
https://stackoverflow.com/questions/158703
复制相似问题