Partager via


Cache.Add Méthode

Définition

Ajoute l'élément spécifié à l'objet Cache avec des dépendances, des stratégies d'expiration et de priorité, ainsi qu'un délégué que vous pouvez utiliser pour avertir votre application lorsque l'élément inséré est supprimé du Cache.

public:
 System::Object ^ Add(System::String ^ key, System::Object ^ value, System::Web::Caching::CacheDependency ^ dependencies, DateTime absoluteExpiration, TimeSpan slidingExpiration, System::Web::Caching::CacheItemPriority priority, System::Web::Caching::CacheItemRemovedCallback ^ onRemoveCallback);
public object Add (string key, object value, System.Web.Caching.CacheDependency dependencies, DateTime absoluteExpiration, TimeSpan slidingExpiration, System.Web.Caching.CacheItemPriority priority, System.Web.Caching.CacheItemRemovedCallback onRemoveCallback);
member this.Add : string * obj * System.Web.Caching.CacheDependency * DateTime * TimeSpan * System.Web.Caching.CacheItemPriority * System.Web.Caching.CacheItemRemovedCallback -> obj
Public Function Add (key As String, value As Object, dependencies As CacheDependency, absoluteExpiration As DateTime, slidingExpiration As TimeSpan, priority As CacheItemPriority, onRemoveCallback As CacheItemRemovedCallback) As Object

Paramètres

key
String

Clé de cache utilisée pour faire référence à l'élément.

value
Object

Élément à ajouter au cache.

dependencies
CacheDependency

Dépendances de fichier ou de clé de cache pour l'élément considéré. Lorsqu'une dépendance change, l'objet n'est plus valide et est supprimé du cache. En l'absence de dépendances, ce paramètre contient null.

absoluteExpiration
DateTime

Moment auquel l'objet ajouté expire et est supprimé du cache. Si vous utilisez l'expiration décalée, le paramètre absoluteExpiration doit être NoAbsoluteExpiration.

slidingExpiration
TimeSpan

Intervalle entre le dernier accès à l'objet ajouté au cache et le moment où cet objet expire. Si cette valeur est équivalente à 20 minutes, l'objet expire et est supprimé du cache 20 minutes après son dernier accès. Si vous utilisez l'expiration absolue, le paramètre slidingExpiration doit être NoSlidingExpiration.

priority
CacheItemPriority

Coût relatif de l'objet exprimé par l'énumération CacheItemPriority. Le cache utilise cette valeur lorsqu'il évince des objets ; les objets de moindre coût sont supprimés du cache avant les objets de coût supérieur.

onRemoveCallback
CacheItemRemovedCallback

Délégué qui, s'il est fourni, est appelé lorsqu'un objet est supprimé du cache. Vous pouvez l'utiliser pour notifier aux applications que leurs objets sont supprimés du cache.

Retours

Objet qui représente l'élément qui a été ajouté si l'élément était stocké précédemment dans le cache ; sinon, null.

Exceptions

Le paramètre key ou value est null.

Le paramètre slidingExpiration a une valeur inférieure à TimeSpan.Zero ou supérieure à un an.

Les paramètres absoluteExpiration et slidingExpiration sont tous deux définis pour l'élément que vous tentez d'ajouter au Cache.

Exemples

L’exemple suivant crée une AddItemToCache méthode. Quand cette méthode est appelée, elle définit une itemRemoved propriété false sur et inscrit une onRemove méthode avec une nouvelle instance du CacheItemRemovedCallback délégué. La signature du délégué est utilisée dans la RemovedCallback méthode . La AddItemToCache méthode vérifie ensuite la valeur associée à la Key1 clé dans le cache. Si la valeur est null, la Add méthode place un élément dans le cache avec une clé de Key1, une valeur de Value 1, une expiration absolue de 60 secondes et une priorité de cache élevée. Il utilise également la onRemove méthode comme argument. Cela permet d’appeler la RemovedCallback méthode lorsque cet élément est supprimé du cache.

Notes

Pour obtenir des exemples d’utilisation de la CacheDependency classe et du CacheItemRemovedCallback délégué, consultez Mise en cache des données d’application.

public void AddItemToCache(Object sender, EventArgs e) {
    itemRemoved = false;

    onRemove = new CacheItemRemovedCallback(this.RemovedCallback);

    if (Cache["Key1"] == null)
      Cache.Add("Key1", "Value 1", null, DateTime.Now.AddSeconds(60), Cache.NoSlidingExpiration, CacheItemPriority.High, onRemove);
}
Public Sub AddItemToCache(sender As Object, e As EventArgs)
    itemRemoved = false

    onRemove = New CacheItemRemovedCallback(AddressOf Me.RemovedCallback)

    If (IsNothing(Cache("Key1"))) Then
      Cache.Add("Key1", "Value 1", Nothing, DateTime.Now.AddSeconds(60), Cache.NoSlidingExpiration, CacheItemPriority.High, onRemove)
    End If
End Sub

Remarques

Les appels à cette méthode échouent en mode silencieux si un élément avec le même key paramètre est déjà stocké dans .Cache Pour remplacer un élément existant Cache à l’aide du même key paramètre, utilisez la Insert méthode .

Vous ne pouvez pas définir les absoluteExpiration paramètres et .slidingExpiration Si vous prévoyez que l’élément de cache expire à un moment spécifique, vous définissez le absoluteExpiration paramètre sur l’heure spécifique et le slidingExpiration paramètre sur NoSlidingExpiration.

Si vous prévoyez que l’élément de cache expire après un certain laps de temps écoulé depuis le dernier accès à l’élément, vous définissez le slidingExpiration paramètre sur l’intervalle d’expiration et le absoluteExpiration paramètre sur NoAbsoluteExpiration.

S’applique à

Voir aussi