Caching with a User Control : User Control « Cache « ASP.NET Tutorial






OutputCache directive causes the contents of the User Control to be cached in memory for a maximum of 10 minutes (600 seconds).

File: Control.ascx

<%@ Control Language="C#" ClassName="Products" %>
<%@ OutputCache Duration="600" VaryByParam="none" %>

User Control Time:
<%= DateTime.Now.ToString("T") %>
<asp:GridView
    id="grdProducts"
    DataSourceID="srcProducts"
    Runat="server" />

<asp:SqlDataSource
    id="srcProducts"
    ConnectionString="<%$ ConnectionStrings:Products %>"
    SelectCommand="SELECT Title,Director FROM Products"
    Runat="server" />


File: ShowUserControlCache.aspx

<%@ Page Language="C#" %>
<%@ Register TagPrefix="user" TagName="Products" Src="~/Control.ascx" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
 "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
    <title>Show User Control Cache</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>

    Page Time:
    <%= DateTime.Now.ToString("T") %>
    <hr />

    <user:Products
        id="Products1"
        Runat="server" />

    </div>
    </form>
</body>
</html>








13.15.User Control
13.15.1.Caching with a User Control
13.15.2.Sharing a User Control Output Cache
13.15.3.Creating a User Control Cache File Dependency
13.15.4.Programmatically caching a User Control.