温故知新ASP.NET 2.0(C#)(4) - 缓存&SqlCacheDependency

系列文章导航:

温故知新ASP.NET 2.0(C#)(1) - MasterPage(母版页)

温故知新ASP.NET 2.0(C#)(1) - MasterPage(母版页)

温故知新ASP.NET 2.0(C#)(2) - Themes(主题)

温故知新ASP.NET 2.0(C#)(3) - SiteMap(站点地图)

温故知新ASP.NET 2.0(C#)(4) - 缓存&SqlCacheDependency

温故知新ASP.NET 2.0(C#)(5) - Localization

温故知新ASP.NET 2.0(C#)(8) - DataSourceControl

温故知新ASP.NET 2.0(C#)(6) - Membership&RoleManager

温故知新ASP.NET 2.0(C#)(7) - Profile

温故知新ASP.NET 2.0(C#)(8) - DataSourceControl


介绍
  缓存是在计算中广泛使用的一种技术,通过将经常访问的数据或存取开销较大的数据保留在内存或硬盘中来提高性能。在 Web 应用程序的上下文中,缓存用于在 HTTP 请求之间保留页或数据,在重用它们时可以不必耗费资源重新创建。

关键
  1、@OutputCache指令中的属性:
      Duration - 缓存时间(秒)
      VaryByParam - 根据使用 POST 或 GET 发送的名称/值对来改变缓存的结果(多参数用分号隔开)
      VaryByControl - 根据用户控件中的控件来改变缓存的片段(值是控件ID,多控件用分号隔开)
      CacheProfile - 调用配置文件中设置的缓存时间

  2、增加数据缓存时用Cache.Insert,可以指定缓存时间

  3、替换缓存(Substitution)- 回调函数要是静态的

  4、SqlCacheDependency

  配置文件中的配置

Code

  如果不是SqlServer2005的话,应该使用aspnet_regsql注册一下
  aspnet_regsql.exe -S "server" -E -d "database" -ed
  aspnet_regsql.exe -S "server" -E -d "database" -et -t "table"
  如果是Sql验证的话要把-E换成,-U(用户名),-P(密码)

示例
  页面输出缓存
  Cahce/Page.aspx

Code


API操作缓存
Cahce/Page.aspx.cs

Code

 

页面输出缓存(VaryByParam)
Cahce/PageByParam.aspx

Code

 

上面页所需的web.config中的配置

Code

 

页面输出缓存(VaryByControl)
Cahce/CacheControl.ascx

Code

Cahce/PageByControl.aspx

Code

 

你可能感兴趣的:(ASP.NET,Cache)