Partager via


MemoryCache.AddOrGetExisting Méthode

Définition

Insère une entrée de cache dans le cache.

Surcharges

AddOrGetExisting(CacheItem, CacheItemPolicy)

Ajoute une entrée dans le cache à l'aide de l'instance de CacheItem spécifiée et des détails concernant le mode de suppression de l'entrée.

AddOrGetExisting(String, Object, DateTimeOffset, String)

Ajoute une entrée dans le cache à l'aide de la clé spécifiée, d'une valeur et d'une valeur d'expiration absolue.

AddOrGetExisting(String, Object, CacheItemPolicy, String)

Insère une entrée dans le cache à l'aide de la clé et de la valeur spécifiées, ainsi que des détails spécifiés concernant le mode de suppression.

Remarques

Les AddOrGetExisting surcharges de méthode sont utilisées pour insérer une entrée de cache dans le cache. S’il n’existe pas d’entrée de cache avec une clé correspondante, ces méthodes insèrent une nouvelle entrée. Si une entrée de cache avec une clé correspondante existe déjà, ils retournent l’entrée existante.

AddOrGetExisting(CacheItem, CacheItemPolicy)

Source:
MemoryCache.cs
Source:
MemoryCache.cs

Ajoute une entrée dans le cache à l'aide de l'instance de CacheItem spécifiée et des détails concernant le mode de suppression de l'entrée.

public:
 override System::Runtime::Caching::CacheItem ^ AddOrGetExisting(System::Runtime::Caching::CacheItem ^ item, System::Runtime::Caching::CacheItemPolicy ^ policy);
public override System.Runtime.Caching.CacheItem AddOrGetExisting (System.Runtime.Caching.CacheItem item, System.Runtime.Caching.CacheItemPolicy policy);
override this.AddOrGetExisting : System.Runtime.Caching.CacheItem * System.Runtime.Caching.CacheItemPolicy -> System.Runtime.Caching.CacheItem
Public Overrides Function AddOrGetExisting (item As CacheItem, policy As CacheItemPolicy) As CacheItem

Paramètres

item
CacheItem

Objet à ajouter.

policy
CacheItemPolicy

Objet qui contient les informations d'éviction de l'entrée de cache. Cet objet fournit des options d'éviction autres que la simple expiration absolue.

Retours

S'il existe une entrée de cache ayant la même clé, l'entrée de cache existante ; sinon, null.

Exceptions

La propriété Value a la valeur null.

Les valeurs d’expiration absolue et décalée de l’objet CacheItemPolicy sont des valeurs autres que les valeurs par défaut des champs InfiniteAbsoluteExpiration et NoSlidingExpiration. La classe MemoryCache ne peut pas définir de stratégie d’expiration basée sur la combinaison d’une expiration absolue et d’une expiration décalée. Vous ne pouvez définir explicitement qu’un seul paramètre d’expiration quand vous utilisez l’instance de MemoryCache. L’autre paramètre d’expiration doit avoir la valeur du champ InfiniteAbsoluteExpiration ou du champ NoSlidingExpiration.

La valeur affectée à la propriété SlidingExpiration est inférieure à Zero.

- ou -

La propriété SlidingExpiration a une valeur supérieure à une année.

- ou -

La propriété Priority n’est pas une valeur de l’énumération CacheItemPriority.

Remarques

Le item paramètre fournit la clé et la valeur utilisée par la méthode . Si le cache a une entrée de cache avec la même clé que la clé du item paramètre, la méthode retourne l’entrée existante en tant que CacheItem instance. S’il n’existe aucune entrée de cache, la méthode en crée une en utilisant la clé et la valeur fournies par le item paramètre, et avec les détails d’éviction spécifiés par policy.

Avertissement

Les surcharges de méthode Add et AddOrGetExisting ne prennent pas en charge la propriété UpdateCallback. Par conséquent, pour définir la propriété UpdateCallback d'une entrée du cache, utilisez les surcharges de méthode Set à la place.

S’applique à

AddOrGetExisting(String, Object, DateTimeOffset, String)

Source:
MemoryCache.cs
Source:
MemoryCache.cs

Ajoute une entrée dans le cache à l'aide de la clé spécifiée, d'une valeur et d'une valeur d'expiration absolue.

public override object AddOrGetExisting (string key, object value, DateTimeOffset absoluteExpiration, string regionName = default);
override this.AddOrGetExisting : string * obj * DateTimeOffset * string -> obj
Public Overrides Function AddOrGetExisting (key As String, value As Object, absoluteExpiration As DateTimeOffset, Optional regionName As String = Nothing) As Object

Paramètres

key
String

Identificateur unique de l'entrée de cache à ajouter.

value
Object

Données pour l'entrée du cache.

absoluteExpiration
DateTimeOffset

Date et heure fixes auxquelles l'entrée de cache expirera.

regionName
String

Région nommée du cache à laquelle une entrée de cache peut être ajoutée. Ne passez pas de valeur pour ce paramètre. Ce paramètre est null par défaut, car la classe MemoryCache n'implémente pas de régions.

Retours

S'il existe une entrée de cache ayant la même clé, l'entrée de cache existante ; sinon, null.

Exceptions

value n’est pas un null.

regionName n’est pas un null.

Les valeurs d’expiration absolue et décalée de l’objet CacheItemPolicy sont des valeurs autres que les valeurs par défaut des champs InfiniteAbsoluteExpiration et NoSlidingExpiration. La classe MemoryCache ne peut pas définir de stratégie d’expiration basée sur la combinaison d’une expiration absolue et d’une expiration décalée. Vous ne pouvez définir explicitement qu’un seul paramètre d’expiration quand vous utilisez l’instance de MemoryCache. L’autre paramètre d’expiration doit avoir la valeur InfiniteAbsoluteExpiration ou NoSlidingExpiration

La valeur affectée à la propriété SlidingExpiration est inférieure à Zero.

- ou -

La propriété SlidingExpiration a une valeur supérieure à une année.

- ou -

La propriété Priority n’est pas une valeur de l’énumération CacheItemPriority.

Remarques

Si le cache n’a pas d’entrée de cache dont la clé correspond au key paramètre, une nouvelle entrée de cache est créée et la surcharge de méthode MemoryCache.AddOrGetExisting retourne null. S’il existe une entrée de cache correspondante, l’entrée existante est retournée.

Avertissement

Les surcharges de méthode Add et AddOrGetExisting ne prennent pas en charge la propriété UpdateCallback. Par conséquent, pour définir la propriété UpdateCallback d'une entrée du cache, utilisez les surcharges de méthode Set à la place.

S’applique à

AddOrGetExisting(String, Object, CacheItemPolicy, String)

Source:
MemoryCache.cs
Source:
MemoryCache.cs

Insère une entrée dans le cache à l'aide de la clé et de la valeur spécifiées, ainsi que des détails spécifiés concernant le mode de suppression.

public override object AddOrGetExisting (string key, object value, System.Runtime.Caching.CacheItemPolicy policy, string regionName = default);
override this.AddOrGetExisting : string * obj * System.Runtime.Caching.CacheItemPolicy * string -> obj
Public Overrides Function AddOrGetExisting (key As String, value As Object, policy As CacheItemPolicy, Optional regionName As String = Nothing) As Object

Paramètres

key
String

Identificateur unique de l'entrée de cache à ajouter ou à obtenir.

value
Object

Données pour l'entrée du cache.

policy
CacheItemPolicy

Objet qui contient les informations d'éviction de l'entrée de cache. Cet objet fournit des options d'éviction autres que la simple expiration absolue.

regionName
String

Région nommée du cache à laquelle une entrée de cache peut être ajoutée. Ne passez pas de valeur pour ce paramètre. Par défaut, ce paramètre est null, étant donné que la classe MemoryCache n'implémente pas de régions.

Retours

S'il existe une entrée de cache correspondante, une entrée de cache ; sinon, null.

Exceptions

value a la valeur null.

Les valeurs d’expiration absolue et décalée de l’objet CacheItemPolicy sont des valeurs autres que les valeurs par défaut de InfiniteAbsoluteExpiration et de NoSlidingExpiration. La classe MemoryCache ne peut pas définir de stratégie d’expiration basée sur la combinaison d’une expiration absolue et d’une expiration décalée. Vous ne pouvez définir explicitement qu’un seul paramètre d’expiration quand vous utilisez la classe MemoryCache. L’autre paramètre doit avoir la valeur InfiniteAbsoluteExpiration ou NoSlidingExpiration.

- ou -

Le rappel de suppression et le rappel de mise à jour ont été spécifiés pour CacheItemPolicy. La classe MemoryCache ne prend en charge qu’un seul type de rappel par entrée de cache.

La valeur affectée à la propriété SlidingExpiration est inférieure à Zero.

- ou -

SlidingExpiration a une valeur supérieure à une année.

- ou -

La propriété Priority n’est pas une valeur de l’énumération CacheItemPriority.

Remarques

Avertissement

Les surcharges de méthode Add et AddOrGetExisting ne prennent pas en charge la propriété UpdateCallback. Par conséquent, pour définir la propriété UpdateCallback d'une entrée du cache, utilisez les surcharges de méthode Set à la place.

S’applique à