MemoryCache.AddOrGetExisting Méthode
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.
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.