=波波日志 > Asp.Net/C#/WCF > SqlCacheDependency基于多个数据库表,多个数据库的缓存运用=
SqlCacheDependency基于多个数据库表,多个数据库的缓存运用
当一个页面信息来自不同的数据库,不同的表,此时非常必要对数据库信息进行缓存,减少不必要的连接数据库和读取数据库信息,而是直接从缓存中读取。
要使用SqlCacheDependency+outputcache指令进行数据缓存,必须确保每个数据库,需要缓存的表都开启了SqlCacheDependency,具体如何开启请参考ASP.NET 2.0 中的SqlCacheDependency特性。
当开启完毕并且设置好web.config相关信息后,就可以使用OutputCache指令了。
假设一个页面需用要到blog和Northwind数据,则相关配置信息如下。
web.config
要使用到多个数据库,多个表的aspx页面的Outputcache指令的值
监视多个表和多个数据库时,SqlDependency的值需要英文状态下的分号“;”分隔开每个要监视的数据库表对象。对于SqlDependency的值的格式,请参考SqlCacheDependency无法在配置中找到“Northwind”数据库错误。简单来说就是分号“;”前面的值是databases配置节下的节点name的值,而不是连接到数据库的名称,如果使用数据库名称,程序则会出错。
要使用SqlCacheDependency+outputcache指令进行数据缓存,必须确保每个数据库,需要缓存的表都开启了SqlCacheDependency,具体如何开启请参考ASP.NET 2.0 中的SqlCacheDependency特性。
当开启完毕并且设置好web.config相关信息后,就可以使用OutputCache指令了。
假设一个页面需用要到blog和Northwind数据,则相关配置信息如下。
web.config
+展开
-XML
<connectionStrings>
<add name="db" connectionString="server=.;database=Northwind;uid=sa;pwd=;" providerName="System.Data.SqlClient"/>
<add name="blog" connectionString="server=.;database=blog;uid=sa;pwd=;" providerName="System.Data.SqlClient"/>
</connectionStrings>
<system.web>
<caching>
<sqlCacheDependency enabled="true">
<databases>
<add name="db" connectionStringName="db" pollTime="60000"/>
<add name="blog" connectionStringName="blog" pollTime="60000"/>
</databases>
</sqlCacheDependency>
</caching>
</system.web>
<add name="db" connectionString="server=.;database=Northwind;uid=sa;pwd=;" providerName="System.Data.SqlClient"/>
<add name="blog" connectionString="server=.;database=blog;uid=sa;pwd=;" providerName="System.Data.SqlClient"/>
</connectionStrings>
<system.web>
<caching>
<sqlCacheDependency enabled="true">
<databases>
<add name="db" connectionStringName="db" pollTime="60000"/>
<add name="blog" connectionStringName="blog" pollTime="60000"/>
</databases>
</sqlCacheDependency>
</caching>
</system.web>
要使用到多个数据库,多个表的aspx页面的Outputcache指令的值
+展开
-HTML
<%@ OutputCache Duration="3600" SqlDependency="db:Employees;blog:blog" VaryByParam="none" %>
监视多个表和多个数据库时,SqlDependency的值需要英文状态下的分号“;”分隔开每个要监视的数据库表对象。对于SqlDependency的值的格式,请参考SqlCacheDependency无法在配置中找到“Northwind”数据库错误。简单来说就是分号“;”前面的值是databases配置节下的节点name的值,而不是连接到数据库的名称,如果使用数据库名称,程序则会出错。
类别:Asp.Net/C#/WCF 作者:波波 日期:2010-06-02 【评论:0】
暂时没有评论!
发表留言
百度赞助
同类热门博文
- ·IE里Cookie跨域不能..
- ·去掉隐藏asp.net编译..
- ·解决asp.net验证视图..
- ·找不到System.Web.S..
- ·web服务因URL意外地..
- ·C#2.0中,SerialPor..
- ·用C#编写ActiveX控件..
- ·用C#编写ActiveX控件..
博格Tag
- flash/flex/fcs/AIR(752)
- Asp.Net/C#/WCF(598)
- 操作系统及应用软件(376)
- JavaScript/Ajax(330)
- SQL及数据库(134)
- 黑客技术(115)
- Asp/VBScript(111)
- HTML/WML/CSS兼容/XML(102)
- PHP/apache/Perl(96)
- 网站排名及优化(96)
- 其他(75)
- showbo日志(66)
- lucene.net/分词技术(33)
- 计算机网络(26)
- 机械重工(26)
- C#设计模式(25)
- Google Maps开发(17)
- 日语学习(15)
- Canvas/VML/SVG(13)
- linux(11)
- 游戏开发(8)
- 正则表达式(5)
- Jsp/Java(4)
最新博文
- ·详解SqlConnection连..
- ·C#实现的html内容截..
- ·asp.net web.config..
- ·asp.net<%--注释--%..
- ·ASP.NET环境配置常见..
- ·asp.net防止图片盗链..
- ·Session.Abandon的使..
- ·asp中缓存cache技术..
随机博文
