1. 回显缓存
加入这一句 <%@ OutputCache Duration=60 VaryByParam=none %>
%@ 为页面属性
Duration 为缓存超时时间, 60 秒后过期
VaryByParam 为因哪个参数而改变
2. 回调缓存
<%@ OutputCache Duration=60 VaryByParam=stata %>
根据 lll.aspx?stata=的内容分别缓存
下面的方法可以根据内容刷新
<script runat="server">
Shared Function GetCurrentDate(ByVal context As HttpContext) As String
Return Now.ToString()
End Function
</script>
<asp:Substitution ID="Substitution1" runat="server" MethodName="GetCurrentDate" />
3.碎片缓存
自己做控件,使用<%@ OutputCache Duration=60 VaryByParam=none %>
只缓存这个控件
4 数据缓存
<script runat="server">
Sub Page_Load(ByVal Src As Object, ByVal E As EventArgs)
Dim Source As DataView
' try to retrieve item from cache
' if it's not there, add it
Source = Cache("MyDataSet")
If Source Is Nothing Then
Dim MyConnection As SqlConnection
Dim MyCommand As SqlDataAdapter
MyConnection = New SqlConnection(ConfigurationManager.ConnectionStrings("pubsConnectionString").ConnectionString)
MyCommand = New SqlDataAdapter("select * from Authors", MyConnection)
Dim ds As New DataSet
MyCommand.Fill(ds, "Authors")
Source = New DataView(ds.Tables("Authors"))
Cache("MyDataSet") = Source
CacheMsg.Text = "Dataset created explicitly"
Else
CacheMsg.Text = "Dataset retrieved from cache"
End If
MyGrid.DataSource = Source
MyGrid.DataBind()
End Sub
</script>
5 配置数据库连接池
C:\>dir aspnet_regsql.exe /s
驱动器 C 中的卷是 系统
卷的序列号是 5CE1-C72D
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727 的目录
2005-09-23 07:28 106,496 aspnet_regsql.exe
1 个文件 106,496 字节
C:\>cd \WINDOWS\Microsoft.NET\Framework\v2.0.50727
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727>aspnet_regsql.exe
运行 asp.net sql Server配置向导
Aspnet_regsql.exe –S “\DBNAME” –E –d “pubs” –ed
-E windows 授权
–ed 为enabled
Aspnet_regsql.exe –S “\DBNAME” –E –D “pubs” –et –t “authors”
当 pubs.authors 改变时改变缓存
<%@ OutputCache Duration="9999999" VaryByParam="none" SqlDependency="pubs.authors" %>
5 缓存配置
<caching>
<outputCache>
<diskCache enabled="true" maxSizePerApp="2" />
</outputCache>
<outputCacheSettings>
<outputCacheProfiles>
<add name="CacheFor60Seconds" duration="60" />
</outputCacheProfiles>
</outputCacheSettings>
<!--
<sqlCacheDependency enabled="true" pollTime="1000" >
<databases>
<add name="PubsDB" connectionStringName="pubsConnectionString" />
</databases>
</sqlCacheDependency>
-->
</caching>