AggregateCacheDependency Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Combine plusieurs dépendances entre un élément stocké dans un tableau d’objets CacheDependency et l’objet Cache d’une application ASP.NET. Cette classe ne peut pas être héritée.
public ref class AggregateCacheDependency sealed : System::Web::Caching::CacheDependency
public sealed class AggregateCacheDependency : System.Web.Caching.CacheDependency
type AggregateCacheDependency = class
inherit CacheDependency
Public NotInheritable Class AggregateCacheDependency
Inherits CacheDependency
- Héritage
Exemples
L’exemple de code suivant utilise la AggregateCacheDependency classe pour ajouter un DataSetfichier texte et un fichier XML, nommé XMLDataSet
, dans le cache dépendant d’un fichier texte.
' When the page is loaded, use the
' AggregateCacheDependency class to make
' a cached item dependent on two files.
Sub Page_Load(sender As Object, e As EventArgs)
Dim Source As DataView
Source = Cache("XMLDataSet")
If Source Is Nothing
Dim DS As New DataSet
Dim FS As FileStream
Dim Reader As StreamReader
Dim txtDep As CacheDependency
Dim xmlDep As CacheDependency
Dim aggDep As AggregateCacheDependency
FS = New FileStream(Server.MapPath("authors.xml"),FileMode.Open,FileAccess.Read)
Reader = New StreamReader(FS)
DS.ReadXml(Reader)
FS.Close()
Source = new DataView(ds.Tables(0))
' Create two CacheDependency objects, one to a
' text file and the other to an XML file.
' Create a CacheDependency array with these
' two objects as items in the array.
txtDep = New CacheDependency(Server.MapPath("Storage.txt"))
xmlDep = New CacheDependency(Server.MapPath("authors.xml"))
Dim DepArray() As CacheDependency = {txtDep, xmlDep}
' Create an AggregateCacheDependency object and
' use the Add method to add the array to it.
aggDep = New AggregateCacheDependency()
aggDep.Add(DepArray)
' Call the GetUniqueId method to generate
' an ID for each dependency in the array.
msg1.Text = aggDep.GetUniqueId()
' Add the new data set to the cache with
' dependencies on both files in the array.
Cache.Insert("XMLDataSet", Source, aggDep)
If aggDep.HasChanged = True Then
chngMsg.Text = "The dependency changed at: " & DateTime.Now
Else
chngMsg.Text = "The dependency changed last at: " & aggDep.UtcLastModified.ToString()
End If
cacheMsg1.Text = "Dataset created explicitly"
Else
cacheMsg1.Text = "Dataset retrieved from cache"
End If
MyLiteral.Text = Source.Table.TableName
MyDataGrid.DataSource = Source
MyDataGrid.DataBind()
End Sub
Public Sub btn_Click(sender As Object, e As EventArgs )
If (MyTextBox.Text = String.Empty) Then
msg2.Text ="You have not changed the text file."
Else
msg2.Text="You added " & MyTextBox.Text & "."
' Create an instance of the StreamWriter class
' to write text to a file.
Dim sw As StreamWriter
sw = File.CreateText(Server.MapPath("Storage.txt"))
' Add some text to the file.
sw.Write("You entered:")
sw.WriteLine(MyTextBox.Text)
' Write arbitrary objects to the file as needed.
sw.Write("Text added at:")
sw.WriteLine(DateTime.Now)
sw.WriteLine("-------------------")
sw.Close()
End If
End Sub
Remarques
La AggregateCacheDependency classe surveille une collection d’objets de dépendance afin que lorsque l’un d’eux change, l’élément mis en cache est automatiquement supprimé. Les objets du tableau peuvent être CacheDependency des objets, SqlCacheDependency des objets, des objets personnalisés dérivés ou CacheDependencytoute combinaison de ces objets.
La AggregateCacheDependency classe diffère de la CacheDependency classe dans laquelle elle vous permet d’associer plusieurs dépendances de différents types à un élément mis en cache unique. Par exemple, si vous créez une page qui importe des données à partir d’une table de base de données SQL Server et d’un fichier XML, vous pouvez créer un SqlCacheDependency objet pour représenter une dépendance sur la table de base de données et un CacheDependency pour représenter la dépendance sur le fichier XML. Au lieu d’effectuer un Cache.Insert appel de méthode pour chaque dépendance, vous pouvez créer une instance de la AggregateCacheDependency classe avec chaque dépendance ajoutée. Vous pouvez ensuite utiliser un seul Insert appel pour rendre la page dépendante de l’instance AggregateCacheDependency .
Constructeurs
AggregateCacheDependency() |
Initialise une nouvelle instance de la classe AggregateCacheDependency. |
Propriétés
HasChanged |
Obtient une valeur indiquant si l'objet CacheDependency a changé. (Hérité de CacheDependency) |
UtcLastModified |
Obtient l'heure de la dernière modification de la dépendance. (Hérité de CacheDependency) |
Méthodes
Add(CacheDependency[]) |
Ajoute un tableau d'objets CacheDependency à l'objet AggregateCacheDependency. |
DependencyDispose() |
Libère les ressources utilisées par la classe CacheDependency et toutes classes qui dérivent de CacheDependency. (Hérité de CacheDependency) |
Dispose() |
Libère les ressources utilisées par l’objet CacheDependency. (Hérité de CacheDependency) |
Equals(Object) |
Détermine si l'objet spécifié est égal à l'objet actuel. (Hérité de Object) |
FinishInit() |
Termine l'initialisation de l'objet CacheDependency. (Hérité de CacheDependency) |
GetFileDependencies() |
Obtient les dépendances de fichier. |
GetFileDependencies() |
Obtient les dépendances de fichier. (Hérité de CacheDependency) |
GetHashCode() |
Fait office de fonction de hachage par défaut. (Hérité de Object) |
GetType() |
Obtient le Type de l'instance actuelle. (Hérité de Object) |
GetUniqueID() |
Récupère un identificateur unique pour l’objet AggregateCacheDependency. |
ItemRemoved() |
Appelé lorsqu’une entrée de cache surveillée est supprimée. (Hérité de CacheDependency) |
KeepDependenciesAlive() |
Met à jour l’heure du dernier accès de chaque élément de cache qui dépend de cet élément. (Hérité de CacheDependency) |
MemberwiseClone() |
Crée une copie superficielle du Object actuel. (Hérité de Object) |
NotifyDependencyChanged(Object, EventArgs) |
Avertit l'objet CacheDependency de base que la dépendance représentée par une classe CacheDependency dérivée a changé. (Hérité de CacheDependency) |
SetCacheDependencyChanged(Action<Object,EventArgs>) |
Ajoute une méthode d’action pour notifier les parties intéressées par les modifications apportées à cette dépendance. (Hérité de CacheDependency) |
SetUtcLastModified(DateTime) |
Marque l'heure de la dernière modification d'une dépendance. (Hérité de CacheDependency) |
TakeOwnership() |
Permet au premier utilisateur de déclarer la propriété exclusive de cette dépendance. (Hérité de CacheDependency) |
ToString() |
Retourne une chaîne qui représente l'objet actuel. (Hérité de Object) |