建站学 - 轻松建站从此开始!

建站学-个人建站指南,网页制作,网站设计,网站制作教程

当前位置: 建站学 > 网站开发 > asp.net教程 >

Asp.net缓存简介(3)

时间:2010-03-08 14:11来源: 作者: 点击:
CacheProfile 这个选项有些像连接字符串,作用只是将具体的缓存选项变成对于选项的引用,比如我们在Web.Config放入如下代码: caching outputCacheSettings outputCacheProfiles add name = CacheProfile enabled =

 

CacheProfile

      这个选项有些像连接字符串,作用只是将具体的缓存选项变成对于选项的引用,比如我们在Web.Config放入如下代码:

<caching>
        <outputCacheSettings>
          <outputCacheProfiles>
            <add name="CacheProfile"
                  enabled="true"
                  duration="60"
                   varyByParam="product:id"/>
          </outputCacheProfiles>
        </outputCacheSettings>
            
       
      </caching>
   

 

 

  则在引用时只需要在页面头部设置如下:

<%@ OutputCache CacheProfile="CacheProfile" %>

 

  而不是全部写入页面

 

DiskCacheable

    

     因为服务器内存是有限的,所以通过将DiskCacheable属性设置为true,则可以将缓存页面放入硬盘中,这样即使服务器崩溃重启,缓存依然存在.

 

 

缓存部分页面

      缓存页面的一部分实现原理和缓存整个页面毫无二致,都是在页面头部加入OutputCache指令,唯一的不同是缓存部分页面是在用户控件中进行的。这部分就不在多说了。

 

使用HttpCachePolicy缓存页面

 

       前面已经说了通过OutputCache指令在页面头部设置缓存选项,另一种替代方法是使用HttpCachePolicy类,这个类的实例是Response.Cache.如果使用HttpCachePolicy设置缓存,则需要在页面移除OutputCache指令。

      比如:

<%@ OutputCache  Duration="30" VaryByParam="state;city" %>

    和下面代码是等价的:

 	Response.Cache.SetExpires(DateTime.Now.AddSeconds(30));
      Response.Cache.VaryByParams["state"] = true;
      Response.Cache.VaryByParams["city"] = true;

 

   更多关于HttpCachePolicy,请查看MSDN

 

对象缓存

       对象缓存是将继承与System.Object的对象缓存在服务器的内存中,通过Page类的Cache属性可以访问到Cache集合。Cache内可以放任何类型的对象,但是要小心使用Cache,因为Cache是占用服务器内存,如果使用不当,也许会拖累性能。

      使用Cache的例子:

        //save object into Cache
        Cache["table"] = GridView1;

        //get object from Cache
        GridView gv = (GridView)Cache["table"];

 

 

   要注意的是,再提取缓存中的对象时,一定别忘了强制转换。

总结

     文中对Asp.net的缓存机制进行了简述,asp.net中的缓存极大的简化了开发人员的使用。如果使用得当,程序性能会有客观的提升。

(责任编辑:admin)
织梦二维码生成器
顶一下
(1)
100%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片