PartialCachingAttribute クラスとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > PartialCachingAttribute クラスの意味・解説 

PartialCachingAttribute クラス

Web フォーム ユーザー コントロール (.ascx files) が、出力キャッシュするかどうか、およびその方法を示すために使用するメタデータ属性定義します。このクラス継承できません。

名前空間: System.Web.UI
アセンブリ: System.Web (system.web.dll 内)
構文構文

<AttributeUsageAttribute(AttributeTargets.Class)> _
Public NotInheritable Class
 PartialCachingAttribute
    Inherits Attribute
Dim instance As PartialCachingAttribute
[AttributeUsageAttribute(AttributeTargets.Class)] 
public sealed class PartialCachingAttribute
 : Attribute
[AttributeUsageAttribute(AttributeTargets::Class)] 
public ref class PartialCachingAttribute sealed
 : public Attribute
/** @attribute AttributeUsageAttribute(AttributeTargets.Class) */ 
public final class PartialCachingAttribute
 extends Attribute
AttributeUsageAttribute(AttributeTargets.Class) 
public final class PartialCachingAttribute
 extends Attribute
解説解説

PartialCachingAttribute 属性クラスは、フラグメント キャッシュサポートするユーザー コントロール (.ascx files) をマークしASP.NETコントロールキャッシュするときに使用するキャッシュ設定カプセル化ます。ページおよびコントロール開発者は、PartialCachingAttribute 属性使用して分離コード ファイルユーザー コントロール出力キャッシュ有効にます。

PartialCachingAttribute使用は、出力キャッシュ有効にできる複数方法1 つです。出力キャッシュ有効にするために使用できる方法は、次のとおりです。

ユーザー コントロール@ OutputCache ディレクティブ含まれているか、PartialCachingAttribute適用されている場合ASP.NET パーサーは、PartialCachingControl クラスインスタンス生成してユーザー コントロールラップます。

ASP.NETキャッシュ詳細については、「ASP.NET キャッシュ」を参照してください属性使用方法については、「属性使用したメタデータ拡張」を参照してください

使用例使用例

PartialCachingAttribute使用するコード例次に示します。この例は、3 つの部分構成されます。

この例の最初部分では、UserControl 基本クラスから継承しPartialCachingAttribute 属性適用先となる部分クラス示してます。この例では、属性によって、ユーザー コントロール20 秒間キャッシュされることを指定してます。

' Filename is partialcache.vb
' Create a code-behind user control that is cached
' for 20 seconds using the PartialCachingAttribute class.
' This control uses a DataGrid server control to display
' XML data.
Imports System
Imports System.IO
Imports System.Data
Imports System.Web
Imports System.Web.UI
Imports System.Web.UI.WebControls

Namespace Samples.AspNet.VB.Controls

    ' Set the PartialCachingAttribute.Duration property to 20 seconds.
    <PartialCaching(20)> _
    Partial Class ctlMine
        Inherits UserControl

        Protected Sub Page_Load(ByVal
 Src As [Object], ByVal E As
 EventArgs)
            Dim ds As New
 DataSet()

            Dim fs As New
 FileStream(Server.MapPath("schemadata.xml"), FileMode.Open,
 FileAccess.Read)
            Dim reader As New
 StreamReader(fs)
            ds.ReadXml(reader)
            fs.Close()

            Dim [Source] As New
 DataView(ds.Tables(0))
            ' Use the LiteralControl constructor to create a new
            ' instance of the class.
            Dim myLiteral As New
 LiteralControl()
            ' Set the LiteralControl.Text property to an HTML
            ' string and the TableName value of a data source.
            myLiteral.Text = "<h6><font face=verdana>Caching
 an XML Table: " & [Source].Table.TableName & "
 </font></h6>"
            MyDataGrid.DataSource = [Source]
            MyDataGrid.DataBind()

            TimeMsg.Text = DateTime.Now.ToString("G")
        End Sub 'Page_Load 
    End Class 'ctlMine
End Namespace
// [filename partialcache.cs]
// Create a code-behind user control that is cached
// for 20 seconds using the PartialCachingAttribute class.
// This control uses a DataGrid server control to display
// XML data.
using System;
using System.IO;
using System.Data;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace Samples.AspNet.CS.Controls
{

    // Set the PartialCachingAttribute.Duration property to 20 seconds.
    [PartialCaching(20)]
    public partial class ctlMine : UserControl
    {

        protected void Page_Load(Object Src,
 EventArgs E)
        {
            DataSet ds = new DataSet();

            FileStream fs = new FileStream(Server.MapPath("schemadata.xml"),
 FileMode.Open, FileAccess.Read);
            StreamReader reader = new StreamReader(fs);
            ds.ReadXml(reader);
            fs.Close();

            DataView Source = new DataView(ds.Tables[0]);
            // Use the LiteralControl constructor to create a new
            // instance of the class.
            LiteralControl myLiteral = new LiteralControl();
            // Set the LiteralControl.Text property to an HTML
            // string and the TableName value of a data source.
            myLiteral.Text = "<h6><font face=verdana>Caching an
 XML Table: " + Source.Table.TableName + " </font></h6>";
            MyDataGrid.DataSource = Source;
            MyDataGrid.DataBind();

            TimeMsg.Text = DateTime.Now.ToString("G");

        }
    }
}
// [filename partialcache.jsl]
// Create a code-behind user control that is cached
// for 20 seconds using the PartialCachingAttribute class.
// This control uses a DataGrid server control to display
// XML data.
import System.*;  
import System.IO.*;  
import System.Data.*;  
import System.Web.*;  
import System.Web.UI.*;  
import System.Web.UI.WebControls.*;  

// Set the PartialCachingAttribute.Duration property to 20 seconds.
/** @attribute PartialCaching(20)
 */
public class ctlMine extends UserControl 
{    
    public DataGrid myDataGrid;
    public Label timeMsg;

    protected void Page_Load(Object src, EventArgs
 e)
    {
        DataSet ds = new DataSet();
        FileStream fs = new FileStream(get_Server().MapPath("schemadata.xml")
,
            FileMode.Open, FileAccess.Read);
        StreamReader reader = new StreamReader(fs);
        ds.ReadXml(reader);
        fs.Close();
        DataView source = new DataView(ds.get_Tables().get_Item(0));
        // Use the LiteralControl constructor to create a new
        // instance of the class.
        LiteralControl myLiteral = new LiteralControl();
        // Set the LiteralControl.Text property to an HTML
        // string and the TableName value of a data source.
        myLiteral.set_Text("<h6><font face=verdana>Caching an XML
 Table: " 
            + source.get_Table().get_TableName() + " </font></h6>");
        myDataGrid.set_DataSource(source);
        myDataGrid.DataBind();
        timeMsg.set_Text(DateTime.get_Now().ToString("G"));
    } //Page_Load 
} //ctlMine

この例の 2 番目の部分には、前述の例でユーザー コントロールキャッシュ方法を示すために使用するユーザー コントロール示してます。

<!-- The mark-up .ascx file that displays the output of
     the partialcache.vb user control code-behind file. -->
<%@ Control language="vb" inherits="Samples.AspNet.VB.Controls.ctlMine"
 CodeFile="partialcache.vb.ascx.vb" %>

  <ASP:DataGrid id="MyDataGrid" runat="server"
    Width="900"
    BackColor="#ccccff"
    BorderColor="black"
    ShowFooter="false"
    CellPadding=3
    CellSpacing="0"
    Font-Name="Verdana"
    Font-Size="8pt"
    HeaderStyle-BackColor="#aaaadd"
    EnableViewState="false"
  />

  <p>

  <i>Control last generated on:</i> <asp:label
 id="TimeMsg" runat="server"
 />
<!-- The mark-up .ascx file that displays the output of
     the partialcache.cs user control code-behind file. -->
<%@ Control language=C# inherits="Samples.AspNet.CS.Controls.ctlMine"
 CodeFile="partialcache.cs.ascx.cs" %>

  <ASP:DataGrid id="MyDataGrid" runat="server"
    Width="900"
    BackColor="#ccccff"
    BorderColor="black"
    ShowFooter="false"
    CellPadding=3
    CellSpacing="0"
    Font-Name="Verdana"
    Font-Size="8pt"
    HeaderStyle-BackColor="#aaaadd"
    EnableViewState="false"
  />

  <p>

  <i>Control last generated on:</i> <asp:label id="TimeMsg"
 runat="server" />
// The mark-up .ascx file that displays the output of
// the partialcache.jsl user control code-behind file.
<%@ Control language=VJ# inherits="ctlMine" src="partialcache.jsl"
 %>

  <ASP:DataGrid id="myDataGrid" runat="server"
    Width="900"
    BackColor="#ccccff"
    BorderColor="black"
    ShowFooter="false"
    CellPadding=3
    CellSpacing="0"
    Font-Name="Verdana"
    Font-Size="8pt"
    HeaderStyle-BackColor="#aaaadd"
    EnableViewState="false"
  />

  <p>

  <i>Control last generated on:</i> <asp:label id="timeMsg"
 runat="server" />

この例の 3 番目の部分では、ユーザー コントロールホストする Web フォーム ページ示してます。

<!-- The WebForms page that contains the user control generated
     by partialcache.vb. -->
<%@ Register TagPrefix="Acme" TagName="Cache"
 Src="partialcache.vb.ascx" %>

<html>
<script language="vb" runat="server">

   Sub Page_Load(Src As [Object], E As
 EventArgs) 
      TimeMsg.Text = DateTime.Now.ToString("G")
   End Sub 'Page_Load

  </script>

<body>
  
  <form runat=server>
    <Acme:Cache runat=server/>
    <br>

    <i>Page last generated on:</i> <asp:label id="TimeMsg"
 runat="server" />

  </form>
</body>
</html>
<!-- The WebForms page that contains the user control generated
     by partialcache.cs. -->
<%@ Register TagPrefix="Acme" TagName="Cache" Src="partialcache.cs.ascx"
 %>

<html>
<script language="C#" runat="server">

      void Page_Load(Object Src, EventArgs E ) {

          TimeMsg.Text = DateTime.Now.ToString("G");
      }

  </script>

<body>
  
  <form runat=server>
    <Acme:Cache runat=server/>
    <br>

    <i>Page last generated on:</i> <asp:label id="TimeMsg"
 runat="server" />

  </form>
</body>
</html>
// The WebForms page that contains the user control generated
// by partialcache.jsl.
<%@ Register TagPrefix="Acme" TagName="Cache" Src="partialcache.jsl.ascx"
 %>

<html>
<script language="VJ#" runat="server">

void Page_Load(Object src, EventArgs e ) 
{
    TimeMsg.set_Text(DateTime.get_Now().ToString("G"));
} //Page_Load

  </script>

<body>
  
  <form runat=server>
    <Acme:Cache runat=server/>
    <br>

    <i>Page last generated on:</i> <asp:label id="TimeMsg"
 runat="server" />

  </form>
</body>
</html>
.NET Framework のセキュリティ.NET Frameworkセキュリティ
継承階層継承階層
System.Object
   System.Attribute
    System.Web.UI.PartialCachingAttribute
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバ場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「PartialCachingAttribute クラス」の関連用語

PartialCachingAttribute クラスのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



PartialCachingAttribute クラスのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2025 Microsoft.All rights reserved.

©2025 GRAS Group, Inc.RSS