快速业务通道

深入剖析ASP.NET 2.0缓冲机制

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-05-22
需打开Visual Studio命令提示行,然后输入类似下列的命令:

D:\>aspnet_regsql –S localhost –U sa –P thiru –d Pubs –ed

运行正常的话,应该显示如下:

Enabling the database for SQL cache dependency.

Finished.
D:\>

该命令使Pubs数据库支持SQL缓存无效功能。其中:

◆S—服务器名

◆U—用于连接到SQL Server的用户ID

◆P—用于连接到SQL Server的用户口令

◆d—数据库名

◆ed—支持该数据库具有SQL Server触发的缓存无效功能

一旦在数据库级上完成上面的操作,接下来,你需要在单个表级上启动缓存无效功能。具体实现请参考下列命令:

D:\>aspnet_regsql –S localhost –U sa –P thiru –t authors –d Pubs –et

运行正常的话,应该显示如下:

Enabling the table for SQL cache dependency.

Finished.
D:\>

在上面的命令中:

◆t—指定表的名称

◆et—支持该表具有SQL Server触发的缓存无效功能

上面的命令展示了如何为Pubs数据库中的authors表启动SQL缓存无效支持。一旦你配置好authors表可以发送通知,那么,任何时候该表中的数据变化时,它都会通知ASP.NET使位于缓存中的相应的项无效。

五、为SQL缓存无效实现Web配置

下一步,在你能够把SQL缓存无效功能使用于你的ASP.NET应用程序之前,还要更新Web配置文件—你需要指示ASP.NET框架查询你已经启动SQL缓存无效功能的数据库。下列Web配置文件包含以特定的时间间隔周期性地查询Pubs数据库中必要的配置信息:

<configuration>
<connectionStrings>
<add name="Pubs"
connectionString="Server=localhost;Database=Pubs;uid=sa;
pwd=thiru" />
</connectionStrings>
<system.web>
<caching>
<sqlCacheDependency enabled="true">
<databases>
<add name="Pubs"
connectionStringName="Pubs"
pollTime="60000" />
</databases>
</sqlCacheDependency>
</caching>
</system.web>
</configuration>

前面的Web配置文件包含两个节—<connectionStrings>和<caching>。其中,connectionStrings节创建一个名为“Pubs”的到Pubs数据库的数据库连接字符串;caching节实现配置SQL缓存无效查询;在databases子节下,列出一个或多个你想查询其变化情况的数据库;位于databases节中的add节显示Pubs数据库每一分钟(每60,000毫秒)被查询一次。你可以为不同的数据库指定不同的查询间隔时间。记住,每当查询数据库变化情况时,服务器都必须多做一些工作。如果你不希望数据库中的数据经常改变的话,那么,你应该增加查询间隔时间。

六、在SqlDataSource控件中实现SQL缓存无效

现在,既然你已经实现了要求的配置,那么接下来,你就可以在你的ASP.NET Web页面中利用SQL缓存无效特征。为此,只需要把一个新的Web表单SqlCacheInvalidation.aspx添加到你的网站上。下列是相应于SqlCacheInvalidation.aspx的代码:

<%@ Page Language="C#" %>
<html>
<head>
<title>SQL缓存无效示例</title>
</head>
<body>
<form id="form1" runat="server">
<asp:GridView ID="GridView1" Runat="server"
DataSourceID="SqlDataSource1" DataKeyNames="au_id"
AutoGenerateColumns="False">
<Columns>
<asp:CommandField ShowEdit

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站: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号