Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
ASP.NET缓存类-ASP.NET 3.5和ASP.NET 4.0之间是否存在差异?_Asp.net_Asp.net 3.5_Asp.net 4.0 - Fatal编程技术网

ASP.NET缓存类-ASP.NET 3.5和ASP.NET 4.0之间是否存在差异?

ASP.NET缓存类-ASP.NET 3.5和ASP.NET 4.0之间是否存在差异?,asp.net,asp.net-3.5,asp.net-4.0,Asp.net,Asp.net 3.5,Asp.net 4.0,从ASP.NET 3.5到4.0的ASP.NET缓存类之间是否有任何重大差异?我认为没有任何重大差异;不过有一个新的MemoryCache类 ASP.NET 4为输出缓存添加了可扩展性,使您能够配置一个或多个自定义输出缓存提供程序。输出缓存提供程序可以使用任何存储机制来持久化HTML内容。这些存储选项可以包括本地或远程磁盘、云存储和分布式缓存引擎 自第一次发布以来,ASP.NET包含了一个功能强大的内存中对象缓存(cache)。缓存实现非常流行,已经在非Web应用程序中使用。但是,对于Wind

从ASP.NET 3.5到4.0的ASP.NET缓存类之间是否有任何重大差异?

我认为没有任何重大差异;不过有一个新的MemoryCache类

ASP.NET 4为输出缓存添加了可扩展性,使您能够配置一个或多个自定义输出缓存提供程序。输出缓存提供程序可以使用任何存储机制来持久化HTML内容。这些存储选项可以包括本地或远程磁盘、云存储和分布式缓存引擎

自第一次发布以来,ASP.NET包含了一个功能强大的内存中对象缓存(cache)。缓存实现非常流行,已经在非Web应用程序中使用。但是,对于Windows窗体或WPF应用程序来说,仅为了能够使用ASP.NET对象缓存而包含对System.Web.dll的引用是很尴尬的。为了使缓存可用于所有应用程序,.NETFramework4引入了一个新的程序集、一个新的命名空间、一些基本类型和一个具体的缓存实现。新的System.Runtime.Caching.dll程序集在System.Runtime.Caching命名空间中包含一个新的缓存API。命名空间包含两组核心类: 为构建任何类型的自定义缓存实现提供基础的抽象类型。 一个具体的内存对象缓存实现(MemoryCache类)

新的MemoryCache类是以ASP.NET缓存为模型的,它与ASP.NET共享许多内部缓存引擎逻辑。尽管System.Runtime.caching命名空间中的公共缓存API已更新,以支持自定义缓存的开发,但如果您使用过ASP.NET缓存对象,您将在新的API中找到熟悉的概念


作为Raj答案的补充:

MemoryCache类类似于ASP.NET缓存类。MemoryCache类具有许多用于访问缓存的属性和方法,如果您使用过ASP.NET缓存类,这些属性和方法将是您熟悉的。Cache类和MemoryCache类之间的主要区别在于MemoryCache类已被更改,以使其可供非ASP.NET应用程序的.NET Framework应用程序使用。例如,MemoryCache类对System.Web程序集没有依赖关系。另一个区别是,您可以创建MemoryCache类的多个实例,以便在同一应用程序和同一AppDomain实例中使用

当你说“ASP.NET缓存类”时,你指的是实际的BCL缓存类?在这种情况下,我不认为有任何区别。缓存的差异更大,因此OutputCache的可扩展性: