在页面<%@Page ...%>下加一行:
<%@OutputCache Duration="60" VaryByParam="none"%>
//缓存时间60秒,不根据参数缓存不同页面
二、根据参数缓存不同页面:
<%@OutputCache Duration="60" VaryByParam="state"%>
//根据不同的state参数,缓存成不同的页面,适用于一个页根据参数不同有可能显示不同内容,但是,可能情况有限。
三、硬盘缓存技术
<%@OutputCache Duration="3600" VaryByParam="none" DiskCacheable="true"%>
//可以缓存数据量较大的页面,但是不能频繁改动数据,否则适得其反。
四、回调缓存
4.1 <%@OutputCache ...%>
4.2 <asp:Substitution ID="Subsititution1" runat="server" method="GetCurrentDate" />
//页面正常缓存,但Subsitituion里的内容不缓存
五、SQL Caching(SQL连接池技术)
当数据库(表)中数据改变时,通知页面刷新,否则,直接从缓存取出。
方法:
5.1 进入MS-DOS方式
5.2 运行 aspnet_regsql.exe 参数
常用参数:
-S 要注册的SQL服务器
-E Windows集成认证(代替参数:-U -P,即SQL的用户名和密码)
-d 数据库名称
-et 允许对单独的表进行注册
-t 表名称
例如:
1) aspnet_regsql.exe -S "\SQL Express" -E -d "pubs" -ed
2) aspnet_regsql.exe -S "\SQL Express" -E -d "pubs" -et -t "Author"
5.3 调用
<%@OutputCache Duration="999999" SqlDependency="Pubs:Author" VaryByParam="none"%>
注意,一般监视一至两个表,否则,连接池将会成为系统性能瓶颈。