sql2005下运用 SqlDependency 实现实时缓存 其效果比aspnet_regsql快很多
2010-07-18 17:56
483 查看
缓存调用类
public class SQLCacheUtil
{
private static SqlConnection con = new SqlConnection("server=.;database=SLWCF;uid=sa;pwd=123456");
private static DataTable dt = new DataTable();
public static void insertSqlCache()
{
dt.Clear();
SqlCommand com = new SqlCommand("SELECT [Id],[Name],[PassWord] FROM dbo.Users", con);
SqlDependency.Start("server=.;database=SLWCF;uid=sa;pwd=123456");
System.Web.Caching.SqlCacheDependency sqldep = new System.Web.Caching.SqlCacheDependency(com);
con.Open();
SqlDataReader dr = com.ExecuteReader();
dt.Load(dr);
HttpContext.Current.Response.Write(dt.Rows.Count);
HttpContext.Current.Cache.Insert("insertSQL", dt, sqldep, DateTime.Now.AddHours(1), TimeSpan.Zero, System.Web.Caching.CacheItemPriority.High, null);
dr.Close();
com.Clone();
con.Close();
}
}
测试页面
if (Cache["insertSQL"] == null)
{
SQLCacheUtil.insertSqlCache();
}
DataTable dt2 = (DataTable)Cache["insertSQL"];
this.GridView2.DataSource = dt2;
this.GridView2.DataBind();
重点强调:
1.
SqlCommand com = new SqlCommand("SELECT [Id],[Name],[PassWord] FROM dbo.Users", con);
SqlDependency.Start("server=.;database=SLWCF;uid=sa;pwd=123456");
System.Web.Caching.SqlCacheDependency sqldep = new System.Web.Caching.SqlCacheDependency(com);
顺序要 com->SqlDependency.Start->new SqlCacheDependency
2. SqlCacheDependency(com)
在声明SqlCacheDependency对象时候 有两种方式 在sql2005的情况下一定要用 SqlCommand 做为参数
public class SQLCacheUtil
{
private static SqlConnection con = new SqlConnection("server=.;database=SLWCF;uid=sa;pwd=123456");
private static DataTable dt = new DataTable();
public static void insertSqlCache()
{
dt.Clear();
SqlCommand com = new SqlCommand("SELECT [Id],[Name],[PassWord] FROM dbo.Users", con);
SqlDependency.Start("server=.;database=SLWCF;uid=sa;pwd=123456");
System.Web.Caching.SqlCacheDependency sqldep = new System.Web.Caching.SqlCacheDependency(com);
con.Open();
SqlDataReader dr = com.ExecuteReader();
dt.Load(dr);
HttpContext.Current.Response.Write(dt.Rows.Count);
HttpContext.Current.Cache.Insert("insertSQL", dt, sqldep, DateTime.Now.AddHours(1), TimeSpan.Zero, System.Web.Caching.CacheItemPriority.High, null);
dr.Close();
com.Clone();
con.Close();
}
}
测试页面
if (Cache["insertSQL"] == null)
{
SQLCacheUtil.insertSqlCache();
}
DataTable dt2 = (DataTable)Cache["insertSQL"];
this.GridView2.DataSource = dt2;
this.GridView2.DataBind();
重点强调:
1.
SqlCommand com = new SqlCommand("SELECT [Id],[Name],[PassWord] FROM dbo.Users", con);
SqlDependency.Start("server=.;database=SLWCF;uid=sa;pwd=123456");
System.Web.Caching.SqlCacheDependency sqldep = new System.Web.Caching.SqlCacheDependency(com);
顺序要 com->SqlDependency.Start->new SqlCacheDependency
2. SqlCacheDependency(com)
在声明SqlCacheDependency对象时候 有两种方式 在sql2005的情况下一定要用 SqlCommand 做为参数
相关文章推荐
- iOS---实现在屏幕上实时绘图的简单效果---CAShaperLayer和UIBezierPath的简单运用
- iOS---实现在屏幕上实时绘图的简单效果---CAShaperLayer和UIBezierPath的简单运用
- ASP.NET2.0结合aspnet_regsql实现数据库的缓存依赖
- 如何使用 D3 在地图上实现实时画圈的效果
- 实现Sql2005与页面的数据缓存
- 基于Shadow map的实时阴影效果实现
- 运用cookie来写一个登陆的页面,来实现登陆效果
- Android 可拖拽的GridView效果实现, 长按可拖拽和item实时交换
- C# 运用Jquery和Div实现Loading加载提示效果
- JS实现实时时间显示效果
- 简单CSS技巧实现的Logo动画效果(很像导航栏上经常运用的效果,但有差别)
- 利用Gulp实现JSDoc 3的文档编写过程中的实时解析和效果预览
- ASP.NET下使用xml反序列化、缓存依赖实现个性化配置文件的实时生效
- ASP.NET Boilerplate 学习 AspNet Core2 浏览器缓存使用 c#基础,单线程,跨线程访问和线程带参数 wpf 禁用启用webbroswer右键菜单 EF Core 2.0使用MsSql/MySql实现DB First和Code First ASP.NET Core部署到Windows IIS QRCode.js:使用 JavaScript 生成
- js+jquery实现html5的后台缓存书签效果
- Android中RecyclerView的item运用覆盖view的方法实现item的动画效果
- Android 可拖拽的GridView效果实现, 长按可拖拽和item实时交换
- 运用CSS3实现钟摆效果
- 【android】android:clipChildren属性的运用——viewpager实现画廊(一屏多个Fragment)效果
- asp.net实现SQL2005的通知数据缓存