HttpResponse.AddCacheItemDependencies Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Makes the validity of a cached response dependent on other items in the cache.
Overloads
AddCacheItemDependencies(ArrayList) |
Makes the validity of a cached response dependent on other items in the cache. |
AddCacheItemDependencies(String[]) |
Makes the validity of a cached item dependent on another item in the cache. |
AddCacheItemDependencies(ArrayList)
Makes the validity of a cached response dependent on other items in the cache.
public:
void AddCacheItemDependencies(System::Collections::ArrayList ^ cacheKeys);
public void AddCacheItemDependencies (System.Collections.ArrayList cacheKeys);
member this.AddCacheItemDependencies : System.Collections.ArrayList -> unit
Public Sub AddCacheItemDependencies (cacheKeys As ArrayList)
Parameters
- cacheKeys
- ArrayList
The ArrayList that contains the keys of the items that the current cached response is dependent upon.
Examples
The following example demonstrates how to use an ASP.NET page that is output cached. The code for the page creates an ArrayList object of keys that are associated with items that are stored in the Cache object. Next, the code passes the ArrayList as the parameter in a call to the AddCacheItemDependencies method. This makes the output cached response not valid, if any of the files specified in the ArrayList change.
<%@ Page Language="C#" %>
<%@ outputcache duration="30" varybyparam="none" %>
<%@ Import namespace="Samples.AspNet.CS" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="Server">
private void Page_Load(object sender, System.EventArgs e)
{
// Create an array list that
// contains the keys for two
// items stored in the Cache object.
ArrayList deps = new ArrayList();
deps.Add("bookData");
deps.Add("authorData");
// Make the page invalid if either of the
// cached items change or expire.
Response.AddCacheItemDependencies(deps);
// Populate the DataGrids.
dgAuthors.DataSource = DataHelper.GetAuthorData();
dgAuthors.DataBind();
dgBooks.DataSource = DataHelper.GetBookData();
dgBooks.DataBind();
lblOutputCacheMsg.Text = DateTime.Now.ToString();
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Cache Item Dependencies</title>
</head>
<body>
<form id="Form1" method="post" runat="server">
<table>
<tbody>
<tr>
<th style="WIDTH: 118px">
Authors</th>
<td>
<asp:DataGrid id="dgAuthors" runat="server"></asp:DataGrid>
</td>
</tr>
<tr>
<th style="WIDTH: 118px">
Books</th>
<td>
<asp:DataGrid id="dgBooks" runat="server"></asp:DataGrid>
</td>
</tr>
<tr>
<td style="WIDTH: 118px">
The page was generated at:</td>
<td>
<asp:Label id="lblOutputCacheMsg" runat="server"></asp:Label>
</td>
</tr>
</tbody>
</table>
</form>
</body>
</html>
<%@ Page Language="vb" %>
<%@ outputcache duration="30" varybyparam="none" %>
<%@ Import namespace="Samples.AspNet.VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Private Sub Page_Load(sender As Object, e As System.EventArgs)
' Create an array list that
' contains the keys for two
' items stored in the Cache object.
Dim deps As New ArrayList()
deps.Add("bookData")
deps.Add("authorData")
' Make the page invalid if either of the
' cached items change or expire.
Response.AddCacheItemDependencies(deps)
' Populate the DataGrids.
dgAuthors.DataSource = DataHelper.GetAuthorData()
dgAuthors.DataBind()
dgBooks.DataSource = DataHelper.GetBookData()
dgBooks.DataBind()
lblOutputCacheMsg.Text = DateTime.Now.ToString()
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Cache Item Dependencies</title>
</head>
<body>
<form id="Form1" method="post" runat="server">
<table>
<tbody>
<tr>
<th style="WIDTH: 118px">
Authors</th>
<td>
<asp:DataGrid id="dgAuthors" runat="server"></asp:DataGrid>
</td>
</tr>
<tr>
<th style="WIDTH: 118px">
Books</th>
<td>
<asp:DataGrid id="dgBooks" runat="server"></asp:DataGrid>
</td>
</tr>
<tr>
<td style="WIDTH: 118px">
The page was generated at:</td>
<td>
<asp:Label id="lblOutputCacheMsg" runat="server"></asp:Label>
</td>
</tr>
</tbody>
</table>
</form>
</body>
</html>
Remarks
When the items referred to in the cacheKeys
parameter are removed from the cache, the cached response of the current item is not valid.
See also
Applies to
AddCacheItemDependencies(String[])
Makes the validity of a cached item dependent on another item in the cache.
public:
void AddCacheItemDependencies(cli::array <System::String ^> ^ cacheKeys);
public void AddCacheItemDependencies (string[] cacheKeys);
member this.AddCacheItemDependencies : string[] -> unit
Public Sub AddCacheItemDependencies (cacheKeys As String())
Parameters
- cacheKeys
- String[]
An array of item keys that the cached response is dependent upon.
Remarks
When any of the cacheKey
s are removed from the cache, the cached response of the current item is invalid.