次の方法で共有


HttpResponse.AddCacheDependency(CacheDependency[]) メソッド

定義

応答が出力キャッシュに格納されていて、指定した依存関係が変化した場合、キャッシュ依存関係のセットを応答に関連付け、応答を効率的に無効化します。

public:
 void AddCacheDependency(... cli::array <System::Web::Caching::CacheDependency ^> ^ dependencies);
public void AddCacheDependency (params System.Web.Caching.CacheDependency[] dependencies);
member this.AddCacheDependency : System.Web.Caching.CacheDependency[] -> unit
Public Sub AddCacheDependency (ParamArray dependencies As CacheDependency())

パラメーター

dependencies
CacheDependency[]

アプリケーション依存関係のリストに追加するファイル、キャッシュ キー、または CacheDependency

例外

dependencies パラメーターが null です。

キャッシュされた応答が既に作成された後、キャッシュ処理パイプラインでこのメソッドが呼び出されたのが遅すぎました。

次の例では、 メソッドと オブジェクトを使用してキャッシュの依存関係を AddCacheDependency 作成する方法を CacheDependency 示します。

<%@ Page Language="C#" %>
<%@ outputcache duration="30" varybyparam="none" %>

<!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 a Cache Dependency 
        // using a CacheDependency object.
        CacheDependency authorsDependency = new CacheDependency("authors.xml");


        // Make the page invalid if either of the
        // cached items change or expire.        
        Response.AddCacheDependency(authorsDependency);

        // Display the current time for cache reference
        lblOutputCacheMsg.Text = DateTime.Now.ToString();
    }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title>Cache Dependencies</title> 
</head>
<body>
    <form id="Form1" method="post" runat="server">
        <table>
            <tbody>
                <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" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="Server">
    Sub Page_Load()
        ' Create a Cache Dependency 
        ' using a CacheDependency object.
        Dim authorsDependency("authors.xml") As CacheDependency

        ' Make the page invalid if either of the
        ' cached items change or expire.        
        Response.AddCacheDependency(authorsDependency)

        ' Display the current time for cache reference
        lblOutputCacheMsg.Text = DateTime.Now.ToString()
        
        
    End Sub
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title>Cache Dependencies</title> 
</head>
<body>
    <form id="Form1" method="post" runat="server">
        <table>
            <tbody>
                <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>

注釈

AddCacheDependencyメソッドを使用すると、キャッシュされた応答と オブジェクトの間に依存関係をCacheDependency作成できます。

適用対象

こちらもご覧ください