Exporter (0) Imprimer
Développer tout
Cet article a fait l'objet d'une traduction automatique. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte. Informations supplémentaires.
Traduction
Source

PartialCachingAttribute, classe

Définit l'attribut de métadonnées que les contrôles utilisateur Web Forms (.ascx files) emploient pour indiquer si leur sortie est mise en cache et de quelle manière. Cette classe ne peut pas être héritée.

System.Object
  System.Attribute
    System.Web.UI.PartialCachingAttribute

Espace de noms :  System.Web.UI
Assembly :  System.Web (dans System.Web.dll)

[AttributeUsageAttribute(AttributeTargets.Class)]
public sealed class PartialCachingAttribute : Attribute

Le type PartialCachingAttribute expose les membres suivants.

  NomDescription
Méthode publiquePartialCachingAttribute(Int32)Initialise une nouvelle instance de la classe PartialCachingAttribute avec la durée spécifiée assignée au contrôle utilisateur à mettre en cache.
Méthode publiquePartialCachingAttribute(Int32, String, String, String)Initialise une nouvelle instance de la classe PartialCachingAttribute en spécifiant la durée de mise en cache, les valeurs GET et POST, les noms de contrôles, ainsi que les exigences de mise en cache de sortie personnalisée nécessaires à la variation du cache.
Méthode publiquePartialCachingAttribute(Int32, String, String, String, Boolean)Initialise une nouvelle instance de la classe PartialCachingAttribute, en spécifiant la durée de mise en cache, toutes les valeurs GET et POST, les noms de contrôles, les configurations requises de mise en cache de sortie personnalisées utilisées pour varier le cache et en indiquant si la sortie de contrôle utilisateur peut être partagée avec plusieurs pages.
Méthode publiquePartialCachingAttribute(Int32, String, String, String, String, Boolean)Initialise une nouvelle instance de la classe PartialCachingAttribute, en spécifiant la durée de mise en cache, toutes les valeurs GET et POST, les noms de contrôles, les configurations requises de mise en cache de sortie personnalisées utilisées pour varier le cache, les dépendances de la base de données et en indiquant si la sortie de contrôle utilisateur peut être partagée avec plusieurs pages.
Début

  NomDescription
Propriété publiqueDurationObtient la période, en secondes, pendant laquelle les éléments mis en cache doivent rester dans le cache de sortie.
Propriété publiqueProviderNameObtient ou définit le nom du fournisseur utilisé pour stocker les données du cache de sortie pour le contrôle associé.
Propriété publiqueSharedObtient une valeur indiquant si la sortie du contrôle utilisateur peut être partagée par plusieurs pages.
Propriété publiqueSqlDependencyObtient une chaîne délimitée qui identifie une ou plusieurs paires de noms de bases de données et de tables dont dépend le contrôle utilisateur mis en cache.
Propriété publiqueTypeIdLors de son implémentation dans une classe dérivée, obtient un identificateur unique pour Attribute. (Hérité de Attribute.)
Propriété publiqueVaryByControlsObtient la liste des propriétés de contrôle utilisateur que le cache de sortie utilise pour faire varier le contrôle utilisateur.
Propriété publiqueVaryByCustomObtient la liste des chaînes personnalisées que le cache de sortie utilisera pour faire varier le contrôle utilisateur.
Propriété publiqueVaryByParamsObtient une liste de paramètres de chaînes de requête ou de formulaires POST que le cache de sortie utilisera pour faire varier le contrôle utilisateur.
Début

  NomDescription
Méthode publiqueEqualsInfrastructure. Retourne une valeur indiquant si cette instance équivaut à un objet spécifié. (Hérité de Attribute.)
Méthode publiqueGetHashCodeRetourne le code de hachage de cette instance. (Hérité de Attribute.)
Méthode publiqueGetTypeObtient le Type de l'instance actuelle. (Hérité de Object.)
Méthode publiqueIsDefaultAttributeEn cas de substitution dans une classe dérivée, indique si la valeur de cette instance est la valeur par défaut pour la classe dérivée. (Hérité de Attribute.)
Méthode publiqueMatchEn cas de substitution dans une classe dérivée, retourne une valeur indiquant si cette instance équivaut à un objet spécifié. (Hérité de Attribute.)
Méthode publiqueToStringRetourne une chaîne qui représente l'objet actif. (Hérité de Object.)
Début

  NomDescription
Implémentation d'interface expliciteMéthode privée_Attribute.GetIDsOfNamesMappe un jeu de noms avec un jeu correspondant d'identificateurs de dispatch. (Hérité de Attribute.)
Implémentation d'interface expliciteMéthode privée_Attribute.GetTypeInfoRécupère les informations de type pour un objet, qui peuvent être utilisées pour obtenir les informations de type d'une interface. (Hérité de Attribute.)
Implémentation d'interface expliciteMéthode privée_Attribute.GetTypeInfoCountRécupère le nombre d'interfaces d'informations de type fourni par un objet (0 ou 1). (Hérité de Attribute.)
Implémentation d'interface expliciteMéthode privée_Attribute.InvokeFournit l'accès aux propriétés et aux méthodes exposées par un objet. (Hérité de Attribute.)
Début

La classe d'attributs PartialCachingAttribute marque des contrôles utilisateur (fichiers .ascx), qui prennent en charge la mise en cache de fragment, et encapsule les paramètres de cache qu'ASP.NET utilise lors de la mise en cache du contrôle. Les développeurs de pages et de contrôles utilisent l'attribut PartialCachingAttribute pour activer la mise en cache de sortie pour un contrôle utilisateur dans un fichier code-behind.

L'utilisation de PartialCachingAttribute est l'une des possibilités pour activer la mise en cache de sortie. La liste suivante décrit les méthodes à utiliser pour activer la mise en cache de sortie.

  • Utilisez la directive @ OutputCache pour activer la mise en cache de sortie dans les scénarios déclaratifs.

  • Utilisez PartialCachingAttribute pour activer la mise en cache d'un contrôle utilisateur dans un fichier code-behind.

  • Utilisez la classe ControlCachePolicy pour spécifier des paramètres de cache dans les scénarios par programme dans lesquels vous travaillez avec les instances de BasePartialCachingControl.

Si un contrôle utilisateur contient une directive @ OutputCache ou qu'un PartialCachingAttribute lui est appliqué, l'analyseur ASP.NET génère une instance de la classe PartialCachingControl pour inclure le contrôle utilisateur dans un wrapper.

Pour plus d'informations sur la mise en cache d'ASP.NET, consultez ASP.NET Caching Features. Pour plus d'informations sur l'utilisation d'attributs, consultez Extension des métadonnées à l'aide des attributs.

L'exemple de code suivant illustre l'utilisation de PartialCachingAttribute. Cet exemple se compose de trois parties :

  • Une classe partielle, ctlMine qui hérite de la classe de base UserControl et à laquelle s'applique l'attribut PartialCachingAttribute.

  • Un contrôle utilisateur utilisé avec la classe partielle ctlMine.

  • Une page Web Forms qui héberge le contrôle utilisateur.

La première partie de l'exemple montre une classe partielle qui hérite de la classe de base UserControl et à laquelle l'attribut PartialCachingAttribute est appliqué. Dans cet exemple, l'attribut spécifie que le contrôle utilisateur sera mis en cache pendant 20 secondes.


// [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");

        }
    }
}


La deuxième partie de l'exemple montre un contrôle utilisateur utilisé dans l'exemple précédent pour montrer la mise en cache du contrôle utilisateur.


<!-- 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" />


La troisième partie de l'exemple montre une page Web Forms qui héberge le contrôle utilisateur.


<!-- 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>


.NET Framework

Pris en charge dans : 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (rôle principal du serveur non pris en charge), Windows Server 2008 R2 (rôle principal du serveur pris en charge avec SP1 ou version ultérieure ; Itanium non pris en charge)

Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

Tous les membres static (Shared en Visual Basic) publics de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.

Ajouts de la communauté

AJOUTER
Afficher:
© 2014 Microsoft