PartialCachingAttribute Osztály
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Meghatározza azt a metaadatattribútumot, amelyet a Web Forms felhasználói vezérlői (.ascx fájlok) használnak annak jelzésére, hogy a kimenet gyorsítótárazva van-e. Ez az osztály nem örökölhető.
public ref class PartialCachingAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Class)]
public sealed class PartialCachingAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Class)>]
type PartialCachingAttribute = class
inherit Attribute
Public NotInheritable Class PartialCachingAttribute
Inherits Attribute
- Öröklődés
- Attribútumok
Példák
Az alábbi példakód bemutatja a PartialCachingAttribute. Ez a példa három részből áll:
Az alaposztálytól
ctlMineöröklő és az UserControl attribútumot alkalmazó részleges osztályPartialCachingAttribute.A részleges osztályhoz
ctlMinehasznált felhasználói vezérlő.A felhasználói vezérlőt üzemeltető weblap.
A példa első része egy olyan részleges osztályt mutat be, amely az UserControl alaposztálytól örököl, és amelyre az PartialCachingAttribute attribútumot alkalmazza. Ebben a példában az attribútum azt határozza meg, hogy a felhasználói vezérlőt 20 másodpercig gyorsítótárazza.
// [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
End Namespace
A példa második része egy felhasználói vezérlőt mutat be, amely az előző példában a felhasználói vezérlés gyorsítótárazását mutatja be.
<!-- 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" />
A példa harmadik része egy olyan weblapot mutat be, amely a felhasználói vezérlőt üzemelteti.
<!-- 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>
Megjegyzések
A PartialCachingAttribute attribútumosztály a töredékek gyorsítótárazását támogató felhasználói vezérlőket (.ascx-fájlokat) jelöli, és tartalmazza azokat a gyorsítótár-beállításokat, amelyeket ASP.NET a vezérlő gyorsítótárazásakor. A lap- és vezérlők fejlesztői az PartialCachingAttribute attribútum használatával engedélyezik a felhasználói vezérlők kimeneti gyorsítótárazását egy kód mögötti fájlban.
Az egyik módszer a PartialCachingAttribute kimeneti gyorsítótárazás engedélyezésére. Az alábbi lista a kimeneti gyorsítótárazás engedélyezéséhez használható módszereket ismerteti.
@ OutputCacheAz irányelv használatával deklaratív forgatókönyvekben engedélyezheti a kimeneti gyorsítótárazást.Ezzel engedélyezheti a PartialCachingAttribute gyorsítótárazást egy felhasználóvezérlő számára egy kód mögötti fájlban.
ControlCachePolicy Az osztály használatával programozott módon adja meg a gyorsítótár beállításait olyan programozott forgatókönyvekben, amelyekben példányokkal BasePartialCachingControl dolgozik.
Ha egy felhasználói vezérlő @ OutputCache irányelvet tartalmaz, vagy PartialCachingAttribute van alkalmazva, a ASP.NET elemző létrehozza a PartialCachingControl osztály egy példányát a felhasználói vezérlő burkolásához.
A ASP.NET gyorsítótárazással kapcsolatos további információkért lásd: Caching. Az attribútumok használatáról további információt az Attribútumok című témakörben talál.
Konstruktorok
| Name | Description |
|---|---|
| PartialCachingAttribute(Int32, String, String, String, Boolean) |
Inicializálja az PartialCachingAttribute osztály új példányát, megadva a gyorsítótárazási időtartamot, az esetleges |
| PartialCachingAttribute(Int32, String, String, String, String, Boolean) |
Inicializálja az PartialCachingAttribute osztály új példányát, megadva a gyorsítótárazási időtartamot, az esetleges |
| PartialCachingAttribute(Int32, String, String, String) |
Inicializálja az PartialCachingAttribute osztály új példányát, megadva a gyorsítótárazás időtartamát, a GET és POST értékeket, a vezérlőneveket és az egyéni kimeneti gyorsítótárazási követelményeket. |
| PartialCachingAttribute(Int32) |
Inicializálja az PartialCachingAttribute osztály új példányát a gyorsítótárazandó felhasználói vezérlőhöz rendelt megadott időtartammal. |
Tulajdonságok
| Name | Description |
|---|---|
| Duration |
Másodpercek alatt lekérdezi, hogy a gyorsítótárazott elemek mennyi ideig maradjanak a kimeneti gyorsítótárban. |
| ProviderName |
Lekéri vagy beállítja annak a szolgáltatónak a nevét, amely a társított vezérlő kimeneti gyorsítótárazott adatainak tárolására szolgál. |
| Shared |
Beolvas egy értéket, amely jelzi, hogy a felhasználói vezérlő kimenete megosztható-e több oldallal. |
| SqlDependency |
Lekéri azokat a tagolt sztringeket, amelyek egy vagy több adatbázis- és táblanévpárt azonosítanak, amelyektől a gyorsítótárazott felhasználói vezérlő függ. |
| TypeId |
Ha származtatott osztályban implementálják, ehhez egy egyedi azonosítót Attributekap. (Öröklődés forrása Attribute) |
| VaryByControls |
Lekéri azoknak a felhasználói vezérlőtulajdonságoknak a listáját, amelyeket a kimeneti gyorsítótár a felhasználói vezérlők módosítása érdekében használ. |
| VaryByCustom |
Lekéri azoknak az egyéni sztringeknek a listáját, amelyeket a kimeneti gyorsítótár a felhasználói vezérlők eltérő használatára fog használni. |
| VaryByParams |
Lekéri azoknak a lekérdezési sztringeknek vagy űrlapparamétereknek |
Metódusok
| Name | Description |
|---|---|
| Equals(Object) |
Olyan értéket ad vissza, amely jelzi, hogy ez a példány egyenlő-e egy adott objektummal. (Öröklődés forrása Attribute) |
| GetHashCode() |
A példány kivonatkódját adja vissza. (Öröklődés forrása Attribute) |
| GetType() |
Lekéri az Type aktuális példányt. (Öröklődés forrása Object) |
| IsDefaultAttribute() |
Ha egy származtatott osztályban felül van bírálva, azt jelzi, hogy a példány értéke-e a származtatott osztály alapértelmezett értéke. (Öröklődés forrása Attribute) |
| Match(Object) |
Származtatott osztály felülírásakor egy olyan értéket ad vissza, amely jelzi, hogy ez a példány egy adott objektummal egyenlő-e. (Öröklődés forrása Attribute) |
| MemberwiseClone() |
Az aktuális Objectpéldány sekély másolatát hozza létre. (Öröklődés forrása Object) |
| ToString() |
Az aktuális objektumot jelképező sztringet ad vissza. (Öröklődés forrása Object) |
Explicit interfész-implementációk
| Name | Description |
|---|---|
| _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Névkészletet képez le a küldési azonosítók megfelelő készletére. (Öröklődés forrása Attribute) |
| _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
Lekéri egy objektum típusadatait, amelyek a felület típusadatainak lekérésére használhatók. (Öröklődés forrása Attribute) |
| _Attribute.GetTypeInfoCount(UInt32) |
Lekéri az objektumok által biztosított típusinformációs felületek számát (0 vagy 1). (Öröklődés forrása Attribute) |
| _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Hozzáférést biztosít az objektumok által közzétett tulajdonságokhoz és metódusokhoz. (Öröklődés forrása Attribute) |