虽然ASP.NET和Windows Form都具有自己的状态管理方法,但是CAB提供了一个更广泛的方法。除了开放源码以及与新方法完全兼容而不论其怎样与.NET Framework怎样协作外,CAB还包含一个负责数据安全、过期、清除的系统,以及许多存储选项。这些选项时的它对于任何系统的状态管理问题都是适用的。
可以从Patterns and Practices页面下载CAB。安装完该包后,在Visual Studio.NET 2002或2003中载入该项目并进行编译连接(或者通过SDK命令行完成)。其中的文件、窗体和基类需要对一个assembly 的引用:
using Microsoft.ApplicationBlocks.Cache;
下面这些命名空间中的一些功能对你的项目来说也是有用处的:
using Microsoft.ApplicationBlocks.Cache.DataProtection
using Microsoft.ApplicationBlocks.Cache.Expirations
using Microsoft.ApplicationBlocks.Cache.Scavenging
using Microsoft.ApplicationBlocks.Cache.Storages
如果你选择SQL Server作为缓冲空间,就需要使用Query Analyzer来运行CachingFrameworkScripts.spl文件。这个文件是下载的MSI文件的一部分。在初次build项目时,要注意App.Config文件,它定义了存储。例如,一个适用于SQL Server数据库的StorageInfo看起来可能向下面这样:
<StorgeInfo
AssemblyName=”Microsoft.ApplicationBlocks.Cache”
ClassName=”Microsoft.ApplicationBlocks.Cache.Storages.SqlServerCacheStorage”
Mode=”InProc”
ConnectionString=”user id=user;
password=pass;
DATABASE=Caches;
SERVR=MyDbServer”
Encrypted=”true”
Validated=”true”
ApplicationName=”Weather”
RemotingUrl=”tcp://localhost:8282/CacheService”/>
另外,如果你使用了清除、过期或自定义的存储类,这些信息将存放在另外一个配置文件中,名为CacheStorage.Config。Microsoft.ApplicationBlocks.Cache.dll将用这个文件来描述并建立所需的那些功能。