PartialCachingAttribute PartialCachingAttribute PartialCachingAttribute PartialCachingAttribute Class

Definition

Definiert die Metadatenattribute, die Web Forms-Benutzersteuerelemente (ASCX-Dateien) verwenden, um anzugeben, ob und wie ihre Ausgabe zwischengespeichert wird.Defines the metadata attribute that Web Forms user controls (.ascx files) use to indicate if and how their output is cached. Diese Klasse kann nicht vererbt werden.This class cannot be inherited.

public ref class PartialCachingAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Class)]
public sealed class PartialCachingAttribute : Attribute
type PartialCachingAttribute = class
    inherit Attribute
Public NotInheritable Class PartialCachingAttribute
Inherits Attribute
Vererbung
PartialCachingAttributePartialCachingAttributePartialCachingAttributePartialCachingAttribute
Attribute

Beispiele

Im folgenden Codebeispiel wird die PartialCachingAttributeVerwendung von veranschaulicht.The following code example demonstrates using the PartialCachingAttribute. Dieses Beispiel besteht aus drei Teilen:This example has three parts:

  • Eine partielle Klasse ctlMine,, die von der UserControl -Basisklasse erbt und auf PartialCachingAttribute die das-Attribut angewendet wird.A partial class, ctlMine, that inherits from the UserControl base class and to which the PartialCachingAttribute attribute is applied.

  • Ein Benutzer Steuerelement, das mit der ctlMine partiellen Klasse verwendet wird.A user control that is used with the ctlMine partial class.

  • Eine Web Forms Seite, die das Benutzer Steuerelement hostet.A Web Forms page that hosts the user control.

Der erste Teil des Beispiels veranschaulicht eine partielle Klasse, die von der UserControl -Basisklasse erbt und auf die das PartialCachingAttribute -Attribut angewendet wird.The first part of the example demonstrates a partial class that inherits from the UserControl base class and to which the PartialCachingAttribute attribute is applied. In diesem Beispiel gibt das-Attribut an, dass das Benutzer Steuerelement 20 Sekunden lang zwischengespeichert werden soll.In this example, the attribute specifies that the user control should be cached for 20 seconds.

// [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 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.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
    End Class 'ctlMine
End Namespace

Der zweite Teil des Beispiels zeigt ein Benutzer Steuerelement, das mit dem vorherigen Beispiel verwendet wird, um das Zwischenspeichern von Benutzer Steuerelementen zu veranschaulichen.The second part of the example shows a user control that is used with the previous example to demonstrate user control caching.

<!-- 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-Names="Verdana"
    Font-Size="8pt"
    HeaderStyle-BackColor="#aaaadd"
    EnableViewState="false"
  />

  <br />

  <i>Control last generated on:</i> <asp:label id="TimeMsg" runat="server" />
<!-- 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-Names="Verdana"
    Font-Size="8pt"
    HeaderStyle-BackColor="#aaaadd"
    EnableViewState="false"
  />

  <br />

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

Der dritte Teil des Beispiels veranschaulicht eine Web Forms Seite, die das Benutzer Steuerelement hostet.The third part of the example demonstrates a Web Forms page that hosts the user control.

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

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<script language="C#" runat="server">

      void Page_Load(Object Src, EventArgs E ) {

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

  </script>

<head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
  
  <form id="form1" 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.vb. -->
<%@ Register TagPrefix="Acme" TagName="Cache" Src="partialcache.vb.ascx" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<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>

<head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
  
  <form id="form1" runat="server">
    <Acme:Cache runat="server"/>
    <br />

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

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

Hinweise

Die PartialCachingAttribute Attribut Klasse kennzeichnet Benutzer Steuerelemente (ASCX-Dateien), die das Zwischenspeichern von Fragmenten unterstützen, und kapselt die Cache Einstellungen, die ASP.NET beim Zwischenspeichern des Steuer Elements verwendet.The PartialCachingAttribute attribute class marks user controls (.ascx files) that support fragment caching, and encapsulates the cache settings that ASP.NET uses when caching the control. Entwickler von Seiten und Steuerelementen PartialCachingAttribute verwenden das-Attribut, um die Ausgabe Zwischenspeicherung für ein Benutzer Steuerelement in einer Code Behind-Datei zu aktivieren.Page and controls developers use the PartialCachingAttribute attribute to enable output caching for a user control in a code-behind file.

Die Verwendung PartialCachingAttribute von ist eine von mehreren Möglichkeiten zum Aktivieren der Ausgabe Zwischenspeicherung.Using the PartialCachingAttribute is one of several ways you can enable output caching. In der folgenden Liste werden Methoden beschrieben, mit denen Sie die Ausgabe Zwischenspeicherung aktivieren können.The following list describes methods you can use to enable output caching.

  • Verwenden Sie die-Direktive, um den Ausgabe Cache in deklarativen Szenarien zu aktivieren.Use the directive to enable output caching in declarative scenarios.

  • Verwenden Sie PartialCachingAttribute , um das Zwischenspeichern für ein Benutzer Steuerelement in einer Code Behind-Datei zu aktivieren.Use the PartialCachingAttribute to enable caching for a user control in a code-behind file.

  • Verwenden Sie ControlCachePolicy die-Klasse, um Cache Einstellungen Programm gesteuert in programmatischen Szenarien anzugeben, in BasePartialCachingControl denen Sie mit-Instanzen arbeiten.Use the ControlCachePolicy class to programmatically specify cache settings in programmatic scenarios in which you are working with BasePartialCachingControl instances.

Wenn ein Benutzer Steuerelement eine-Direktive enthält PartialCachingAttribute oder über eine Anwendung verfügt, generiert der ASP.net- PartialCachingControl Parser eine Instanz der-Klasse, um das Benutzer Steuerelement zu wrappen.If a user control contains an directive or has a PartialCachingAttribute applied, the ASP.NET parser generates an instance of the PartialCachingControl class to wrap the user control.

Weitere Informationen zum Zwischenspeichern von ASP.net finden Sie unter Caching.For more information about ASP.NET caching, see Caching. Weitere Informationen zum Verwenden von Attributen finden Sie unter Attribute.For more information about using attributes, see Attributes.

Konstruktoren

PartialCachingAttribute(Int32) PartialCachingAttribute(Int32) PartialCachingAttribute(Int32) PartialCachingAttribute(Int32)

Initialisiert eine neue Instanz der PartialCachingAttribute-Klasse mit der angegebenen Dauer, die dem Benutzersteuerelement zugewiesen ist, das zwischengespeichert werden soll.Initializes a new instance of the PartialCachingAttribute class with the specified duration assigned to the user control to be cached.

PartialCachingAttribute(Int32, String, String, String) PartialCachingAttribute(Int32, String, String, String) PartialCachingAttribute(Int32, String, String, String) PartialCachingAttribute(Int32, String, String, String)

Initialisiert eine neue Instanz der PartialCachingAttribute-Klasse, die die Dauer der Zwischenspeicherung, ggf. GET- und POST-Werte, Steuerelementnamen und benutzerdefinierte Anforderungen zum Ändern des Ausgabecaches angibt.Initializes a new instance of the PartialCachingAttribute class, specifying the caching duration, any GET and POST values, control names, and custom output caching requirements used to vary the cache.

PartialCachingAttribute(Int32, String, String, String, Boolean) PartialCachingAttribute(Int32, String, String, String, Boolean) PartialCachingAttribute(Int32, String, String, String, Boolean) PartialCachingAttribute(Int32, String, String, String, Boolean)

Initialisiert eine neue Instanz der PartialCachingAttribute-Klasse, die die Dauer der Zwischenspeicherung, ggf. GET- und POST-Werte, Steuerelementnamen und benutzerdefinierte Anforderungen zum Ändern des Ausgabecaches sowie die Möglichkeit der gemeinsamen Verwendung der Ausgabe von Benutzersteuerelementen durch mehrere Seiten angibt.Initializes a new instance of the PartialCachingAttribute class, specifying the caching duration, any GET and POST values, control names, custom output caching requirements used to vary the cache, and whether the user control output can be shared with multiple pages.

PartialCachingAttribute(Int32, String, String, String, String, Boolean) PartialCachingAttribute(Int32, String, String, String, String, Boolean) PartialCachingAttribute(Int32, String, String, String, String, Boolean) PartialCachingAttribute(Int32, String, String, String, String, Boolean)

Initialisiert eine neue Instanz der PartialCachingAttribute-Klasse, die die Dauer der Zwischenspeicherung, ggf. GET- und POST-Werte, Steuerelementnamen, benutzerdefinierte Anforderungen zum Ändern des Ausgabecaches und Datenbankabhängigkeiten sowie die Möglichkeit der gemeinsamen Verwendung der Ausgabe von Benutzersteuerelementen durch mehrere Seiten angibt.Initializes a new instance of the PartialCachingAttribute class, specifying the caching duration, any GET and POST values, control names, custom output caching requirements used to vary the cache, the database dependencies, and whether the user control output can be shared with multiple pages.

Eigenschaften

Duration Duration Duration Duration

Ruft die Zeitspanne in Sekunden ab, über die zwischengespeicherte Elemente im Ausgabecache verbleiben.Gets the amount of time, in seconds, that cached items should remain in the output cache.

ProviderName ProviderName ProviderName ProviderName

Ruft den Namen des Anbieters ab, mit dem die im Ausgabecache zwischengespeicherten Daten für das zugeordnete Steuerelement gespeichert werden, oder legt diesen fest.Gets or sets the name of the provider that is used to store the output-cached data for the associated control.

Shared Shared Shared Shared

Ruft einen Wert ab, der angibt, ob die Ausgabe von Benutzersteuerelementen von mehreren Seiten gemeinsam verwendet werden kann.Gets a value indicating whether user control output can be shared with multiple pages.

SqlDependency SqlDependency SqlDependency SqlDependency

Ruft eine durch Trennzeichen getrennte Zeichenfolge ab, die ein oder mehrere Paare aus Datenbank- und Tabellennamen angibt, von denen das zwischengespeicherte Benutzersteuerelement abhängig ist.Gets a delimited string that identifies one or more database and table name pairs that the cached user control is dependent on.

TypeId TypeId TypeId TypeId

Ruft bei Implementierung in einer abgeleiteten Klasse einen eindeutigen Bezeichner für dieses Attribute ab.When implemented in a derived class, gets a unique identifier for this Attribute.

(Inherited from Attribute)
VaryByControls VaryByControls VaryByControls VaryByControls

Ruft eine Liste von Benutzersteuerelementeigenschaften ab, die vom Ausgabecache zum Variieren des Benutzersteuerelements verwendet werden.Gets a list of user control properties that the output cache uses to vary the user control.

VaryByCustom VaryByCustom VaryByCustom VaryByCustom

Ruft eine Liste der benutzerdefinierten Zeichenfolgen ab, die vom Ausgabecache zum Variieren des Benutzersteuerelements verwendet werden.Gets a list of custom strings that the output cache will use to vary the user control.

VaryByParams VaryByParams VaryByParams VaryByParams

Ruft eine Liste von Abfragezeichenfolgen oder Formular-POST-Parametern ab, die vom Ausgabecache zum Variieren des Benutzersteuerelements verwendet werden.Gets a list of query string or form POST parameters that the output cache will use to vary the user control.

Methoden

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Gibt einen Wert zurück, der angibt, ob diese Instanz gleich einem angegebenen Objekt ist.Returns a value that indicates whether this instance is equal to a specified object.

(Inherited from Attribute)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Gibt den Hashcode für diese Instanz zurück.Returns the hash code for this instance.

(Inherited from Attribute)
GetType() GetType() GetType() GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Inherited from Object)
IsDefaultAttribute() IsDefaultAttribute() IsDefaultAttribute() IsDefaultAttribute()

Gibt beim Überschreiben in einer abgeleiteten Klasse an, ob der Wert der Instanz der Standardwert für die abgeleitete Klasse ist.When overridden in a derived class, indicates whether the value of this instance is the default value for the derived class.

(Inherited from Attribute)
Match(Object) Match(Object) Match(Object) Match(Object)

Beim Überschreiben in einer abgeleiteten Klasse wird ein Wert zurückgegeben, der angibt, ob diese Instanz einem bestimmten Objekt entspricht.When overridden in a derived class, returns a value that indicates whether this instance equals a specified object.

(Inherited from Attribute)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.Returns a string that represents the current object.

(Inherited from Object)

Explizite Schnittstellenimplementierungen

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Ordnet eine Reihe von Namen einer entsprechenden Reihe von Dispatchbezeichnern zu.Maps a set of names to a corresponding set of dispatch identifiers.

(Inherited from Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Ruft die Typinformationen für ein Objekt ab, mit deren Hilfe die Typinformationen für eine Schnittstelle abgerufen werden können.Retrieves the type information for an object, which can be used to get the type information for an interface.

(Inherited from Attribute)
_Attribute.GetTypeInfoCount(UInt32) _Attribute.GetTypeInfoCount(UInt32) _Attribute.GetTypeInfoCount(UInt32) _Attribute.GetTypeInfoCount(UInt32)

Ruft die Anzahl der Schnittstellen mit Typinformationen ab, die von einem Objekt bereitgestellt werden (0 oder 1).Retrieves the number of type information interfaces that an object provides (either 0 or 1).

(Inherited from Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Stellt den Zugriff auf von einem Objekt verfügbar gemachte Eigenschaften und Methoden bereit.Provides access to properties and methods exposed by an object.

(Inherited from Attribute)

Gilt für:

Siehe auch