时间:2021-07-01 10:21:17 帮助过:5人阅读
同样的,代码也要配置一下.
- <span style="color: #0000ff;"><</span><span style="color: #800000;">configSections</span><span style="color: #0000ff;">></span>
- <span style="color: #0000ff;"><</span><span style="color: #800000;">section </span><span style="color: #ff0000;">name</span><span style="color: #0000ff;">="DMSLinqCacheProvider"</span><span style="color: #ff0000;"> type</span><span style="color: #0000ff;">="DMSFrame.Cache.DMSLinqCacheProvider,DMSFrame"</span><span style="color: #0000ff;">/></span>
- <span style="color: #0000ff;"></</span><span style="color: #800000;">configSections</span><span style="color: #0000ff;">></span>
- <span style="color: #0000ff;"><</span><span style="color: #800000;">DMSLinqCacheProvider</span><span style="color: #0000ff;">></span>
- <span style="color: #0000ff;"><</span><span style="color: #800000;">add </span><span style="color: #ff0000;">key</span><span style="color: #0000ff;">="provider"</span><span style="color: #ff0000;"> providerName</span><span style="color: #0000ff;">="MsSql"</span><span style="color: #ff0000;"> value</span><span style="color: #0000ff;">="DMSFrame.Cache.<span style="color: #ff0000;">DMSLinqSqlWebCacheProvider</span>,DMSFrame"</span><span style="color: #0000ff;">/></span>
- <span style="color: #0000ff;"></</span><span style="color: #800000;">DMSLinqCacheProvider</span><span style="color: #0000ff;">></span>
注意,此处理配置的数据库连接name必须是 DefaultValue,至于为什么是这个,可以看下引擎源码..呵呵,这里就不解释了.....
- <span style="color: #0000ff;"><</span><span style="color: #800000;">connectionStrings</span><span style="color: #0000ff;">></span>
- <span style="color: #0000ff;"><</span><span style="color: #800000;">add </span><span style="color: #ff0000;">name</span><span style="color: #0000ff;">="<span style="color: #ff0000;">DefaultValue</span>"</span><span style="color: #ff0000;"> providerName</span><span style="color: #0000ff;">="System.Data.SqlClient"</span><span style="color: #ff0000;"> connectionString</span><span style="color: #0000ff;">="Integrated Security=False;server=127.0.0.1;database=DATABASE;User ID=sa;Password=sa;Connect Timeout=30;"</span><span style="color: #0000ff;">/></span>
- <span style="color: #0000ff;"></</span><span style="color: #800000;">connectionStrings</span><span style="color: #0000ff;">></span>
增加支持 sqlCacheDependency 的配置,轮循时间为1000毫秒
- <span style="color: #0000ff;"><</span><span style="color: #800000;">system.web</span><span style="color: #0000ff;">></span>
- <span style="color: #0000ff;"><</span><span style="color: #800000;">caching</span><span style="color: #0000ff;">></span>
- <span style="color: #0000ff;"><</span><span style="color: #800000;">sqlCacheDependency </span><span style="color: #ff0000;">enabled</span><span style="color: #0000ff;">="true"</span><span style="color: #ff0000;"> pollTime</span><span style="color: #0000ff;">="1000"</span><span style="color: #0000ff;">></span>
- <span style="color: #0000ff;"><</span><span style="color: #800000;">databases</span><span style="color: #0000ff;">></span>
- <span style="color: #0000ff;"><</span><span style="color: #800000;">add </span><span style="color: #ff0000;">name</span><span style="color: #0000ff;">="DefaultValue"</span><span style="color: #ff0000;"> connectionStringName</span><span style="color: #0000ff;">="DefaultValue"</span><span style="color: #ff0000;"> pollTime</span><span style="color: #0000ff;">="500"</span> <span style="color: #0000ff;">/></span>
- <span style="color: #0000ff;"></</span><span style="color: #800000;">databases</span><span style="color: #0000ff;">></span>
- <span style="color: #0000ff;"></</span><span style="color: #800000;">sqlCacheDependency</span><span style="color: #0000ff;">></span>
- <span style="color: #0000ff;"></</span><span style="color: #800000;">caching</span><span style="color: #0000ff;">></span>
- <span style="color: #0000ff;"></</span><span style="color: #800000;">system.web</span><span style="color: #0000ff;">></span>
注: databases也可以重写轮循时间的哦...呼呼,不要以为这样就可以了哦..
还要再检查我们数据库是否支持这个模式的方式呢.这种模式查询SQL会自动在表 AspNet_SqlCacheTablesForChangeNotification 添加一行数据..每更新,删除,插入一次都会增加(更新)一数据的.
怎么开启AspNet_SqlCacheTablesForChangeNotification 这个..具体可以参考
1.为 SQL Server 启用缓存通知
aspnet_regsql.exe -S <Server> -U <Username> -P <Password> -ed -d Northwind -et -t Employees
为 Northwind 数据库中的 Employees 表启用缓存通知
aspnet_regsqlcache –S 服务器名称 –U 登陆ID –P 密码 –d 数据库名称 –t 要追踪的数据表的名称 –et
注:这种模式比较耗数据库性能哦!!!!强烈建议用通知模式吧,具体参考文章:
DMSFrame 之SqlCacheDependency(二)
标签: