快速业务通道

ASP.NET 2.0缓存技术探讨

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-05-21
程序的缓存生命周期相同。

l 同时对后台数据进行修改的时候,还需要对Cache进行相应的处理。

l 示例:使用数据缓存示例:

<%@ Page Language="vb" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>

<html >

<script runat="server">
    Sub Page_Load(ByVal Src As Object, ByVal E As EventArgs)
        Dim Source As DataView

        '' try to retrieve item from cache
        '' if it''s not there, add it
        Source = Cache("MyDataSet")

        If Source Is Nothing Then
            Dim MyConnection As SqlConnection
            Dim MyCommand As SqlDataAdapter

            MyConnection = New SqlConnection(ConfigurationManager.ConnectionStrings("pubsConnectionString").ConnectionString)
            MyCommand = New SqlDataAdapter("select * from Authors", MyConnection)

            Dim ds As New DataSet
            MyCommand.Fill (ds, "Authors")

            Source = New DataView(ds.Tables("Authors"))
            Cache("MyDataSet") = Source

            CacheMsg.Text = "Dataset created explicitly"
        Else
            CacheMsg.Text = "Dataset retrieved from cache"
        End If

        MyGrid.DataSource = Source
        MyGrid.DataBind()
    End Sub
 </script>

<body>
    <form id="Form1" runat="server">
        <h3>
            <font face="Verdana">Caching Data</font></h3>
        <asp:GridView ID="MyGrid" runat="server">
        </asp:GridView>
        <p>
            <i>
                <asp:Label ID="CacheMsg" runat="server" /></i>
        </p>
    </form>
</body>
</html >

4.SQl Cache

前面的例子中,我们使用的是缓存技术,一旦时间到,无论服务器端的数据是否改变都会释放缓存,下面介绍的例子,通过配置数据库连接池,只有当数据库数据被改变的时候,缓存才会改变。

示例:配置连接池示例

开一个DOS窗口->找到aspnet_regsql .exe工具(常用参数:-s指定我们注册的服务器-E使用Windows授权模式-D指定数据库DataBase名字-ED缓存生效)->

aspnet_regsql .exe –s “.SQLExPress” –E –d “pubs” –ed
aspnet_regsql .exe –s “.SQLExPress” –E –d “pubs” –et –t  “authors”
<%@ OutputCache Duration = “999999” SqlDependency = “Pubs:Authors” VaryByParam = “none”%>

5.Cache Configuration

可以通过在webconfig里配置不同的缓存描述,在页面中调用该描述来减少重复定义缓存描述的工作量。

示例:缓存描述定义示例:

<configuration>
 

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号