代码改变世界

Asp.Net 2.0之SqlCacheDependency

  Jun1st  阅读(1506)  评论(5编辑  收藏  举报

Introduction

ASP.NET 2.0提供了一些新的用于提升程序性能的技术特性,其中,缓存技术是非常重要的一个特性,它提供了一种非常好的本地数据缓存机制,可以非常容易的定制属于数据缓从,从而有效的提高数据访问的性能。本文将介绍一下SqlCacheDenendency.

1. Page&Source Code

为了简单起见,示例就是用Sql Server的Sample数据库。新建一个Asp.net 2.0或者3.0,3.5的Web site之后,在一个web form上,添加一个GridView, 并配置一个SqlDataSource, 适当的选择几个column,如图:

注意:需要设置SqlDataSource的EnableCaching属性为true,才能实现Cache。除此之外,还需要设置SqlCacheDependency为:Northwind:Employees,如果有多个数据库表要实现这种dependency, 多个表之间以分号分隔。

2.配置文件

<system.web>这个config节点之间需要加上如下配置代码:

<caching>

<sqlCacheDependency enabled="true">

<databases>

<add name="Northwind" connectionStringName="NorthwindConnectionString" pollTime="1000"/>

</databases>

</sqlCacheDependency>

</caching>

使用的connectionStringName为任何一个可以连接到所用数据库的连接。pollTime为轮训更新的时间间隔,为了测试方便,把pollTime设置为1000。

3.启用数据库的SqlCacheDependency

使用如下命令行启用数据库的CacheDependency属性:

    aspnet_regsql -E -ed -d Northwind -et -t Employees

-E:表示使用Windows集成验证。

4.测试

先run application,显示数据,再更改一下数据库数据,再刷新一下页面,就可以看到更新的数据了。

Summary

比较简单,呵呵,请"园友"们多多指教。

 

编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· [AI/GPT/综述] AI Agent的设计模式综述
点击右上角即可分享
微信分享提示