首先打开VS2010-> 工具->visual Studio命令提示,自动进入以下目录:
microsoft visual studio 10.0\vc\bin>
然后键入以下命令:aspnet_regsql -C"Data Source=.\SQLEXPRESS;Initial Catalog=盘符:\路径\ASPNETStepByStep4.mdf;Integrated Security=SSPI;User Instance-=true" -ed -et -t "数据表名"
回车后,如果输入正确为SQL 缓存依赖项启用该数据库。已完成。为SQL 缓存依赖项启用该表。已完成。
启用的数据库为 -C 后面连接字符串指定的数据库,启用的数据表为 -t 后面字符串指定的数据表。
参考MSDNhttp://msdn.microsoft.com/zh-cn/library/ms229862(v=vs.100).aspx。
1 <add name="ASPNETStepByStep4" 2 connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\ASPNETStepByStep4.mdf;User Instance=true" 3 providerName="System.Data.SqlClient" /> 4 </connectionStrings> 5 6 <system.web> 7 <caching> 8 <sqlCacheDependency enabled="true" pollTime="60000"> 9 <databases> 10 <add name="ASPNETStepByStep4" connectionStringName="ASPNETStepByStep4" pollTime="9000000"/> 11 </databases> 12 </sqlCacheDependency> 13 </caching>
当然得修改配置文件,启用sqlCacheDependency服务。
2012年9月15日
http://msdn.microsoft.com/zh-cn/library/system.web.caching.sqlcachedependency(v=vs.80).aspx
http://msdn.microsoft.com/zh-cn/library/system.web.caching.sqlcachedependencyadmin(v=vs.80).aspx
受到MSDN文档的启发
当我使用aspnet_regsql命令行的时候无法使在数据库更新后缓存删除,但是使用SqlCacheDependencyAdmin方法启用通知可以实现此功能。
SqlCacheDependencyAdmin.EnableNotifications( ConfigurationManager.ConnectionStrings["AspNEtStepByStep4"].ConnectionString); SqlCacheDependencyAdmin.EnableTableForNotifications( ConfigurationManager.ConnectionStrings["ASPNETStepByStep4"].ConnectionString, "DotNetReferences");
命令行工具
由于经常使用 aspnet-regsql 可以使用aspnet_regsql.exe -?查询相关指令
使用sqlcmd.exe -?查询sqlserver命令行工具
Devenv命令行开关,进入IDE目录:D:\Microsoft Visual Stduio 10.0\Common7\IDE ,使用devenv /?查询命令