MemoryCache.Set 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
Set(CacheItem, CacheItemPolicy) |
Insère une entrée dans le cache à l'aide d'une instance de CacheItem pour fournir la clé et la valeur de l'entrée de cache. |
Set(String, Object, DateTimeOffset, String) |
Insère une entrée dans le cache à l'aide d'une clé et d'une valeur, et spécifie les détails d'expiration basés sur l'heure. |
Set(String, Object, CacheItemPolicy, String) |
Insère une entrée dans le cache à l'aide d'une clé et d'une valeur pour l'éviction. |
Remarques
Si l’entrée spécifiée n’existe pas, elle est créée. Si l’entrée spécifiée existe, elle est mise à jour.
Set(CacheItem, CacheItemPolicy)
- Source:
- MemoryCache.cs
- Source:
- MemoryCache.cs
- Source:
- MemoryCache.cs
Insère une entrée dans le cache à l'aide d'une instance de CacheItem pour fournir la clé et la valeur de l'entrée de cache.
public:
override void Set(System::Runtime::Caching::CacheItem ^ item, System::Runtime::Caching::CacheItemPolicy ^ policy);
public override void Set (System.Runtime.Caching.CacheItem item, System.Runtime.Caching.CacheItemPolicy policy);
override this.Set : System.Runtime.Caching.CacheItem * System.Runtime.Caching.CacheItemPolicy -> unit
Public Overrides Sub Set (item As CacheItem, policy As CacheItemPolicy)
Paramètres
- item
- CacheItem
Objet qui représente une entrée de cache à insérer.
- 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.
Exceptions
item
a la valeur null
.
- ou -
La propriété Key a la valeur null
.
- ou -
La propriété Value a la valeur null
.
Une combinaison non valide d’arguments pour l’entrée de cache a été passée. Cela se produit si les détails d’expiration suivants sont définis sur l’objet de stratégie pour l’entrée de cache :
Si les valeurs d’expiration absolue et décalée de l’objet CacheItemPolicy sont 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 une expiration absolue et 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 de la propriété InfiniteAbsoluteExpiration ou NoSlidingExpiration.
Si le rappel de suppression et le rappel de mise à jour sont spécifiés pour l’objet 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 -
La propriété SlidingExpiration a une valeur supérieure à une année.
- ou -
Priority n’est pas une valeur de l’énumération CacheItemPriority.
Remarques
Comme d’autres Set surcharges de méthode, la Set méthode place toujours une valeur de cache dans le cache, qu’il existe déjà une entrée qui a la même clé. Si l’entrée spécifiée n’existe pas dans le cache, une nouvelle entrée de cache est insérée. Si l’entrée spécifiée existe déjà, sa valeur est mise à jour.
S’applique à
Set(String, Object, DateTimeOffset, String)
- Source:
- MemoryCache.cs
- Source:
- MemoryCache.cs
- Source:
- MemoryCache.cs
Insère une entrée dans le cache à l'aide d'une clé et d'une valeur, et spécifie les détails d'expiration basés sur l'heure.
public override void Set (string key, object value, DateTimeOffset absoluteExpiration, string regionName = default);
override this.Set : string * obj * DateTimeOffset * string -> unit
Public Overrides Sub Set (key As String, value As Object, absoluteExpiration As DateTimeOffset, Optional regionName As String = Nothing)
Paramètres
- key
- String
Identificateur unique de l'entrée de cache à insérer.
- 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.
Exceptions
regionName
n’est pas un null
.
Une combinaison non valide d’arguments pour l’entrée de cache a été passée. Cela se produit si les détails d’expiration suivants sont définis sur l’objet de stratégie pour l’entrée de cache :
Si les valeurs d’expiration absolue et décalée de l’objet CacheItemPolicy sont autres que les valeurs par défaut de InfiniteAbsoluteExpiration et NoSlidingExpiration. Cela est dû au fait que la classe MemoryCache ne prend pas en charge les entrées d’expiration basées à la fois sur une expiration absolue et 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.
Si le rappel de suppression et le rappel de mise à jour sont spécifiés sur l’objet 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 -
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
Comme d’autres Set surcharges de méthode, la Set méthode place toujours une valeur de cache dans le cache, qu’une entrée existe déjà avec la même clé. Si l’entrée spécifiée n’existe pas, une nouvelle entrée de cache est insérée. Si l’entrée spécifiée existe, elle est mise à jour.
Le absoluteExpiration
paramètre indique quand l’entrée doit être supprimée du cache.
La suppression d’une entrée déclenche tous les moniteurs de modification associés. Si l’élément supprimé a été associé à un objet ou à un CacheItemUpdateCallback objet, la raison de la suppression passée aux rappels est contenue dans la Removed propriété .CacheItemRemovedCallback
S’applique à
Set(String, Object, CacheItemPolicy, String)
- Source:
- MemoryCache.cs
- Source:
- MemoryCache.cs
- Source:
- MemoryCache.cs
Insère une entrée dans le cache à l'aide d'une clé et d'une valeur pour l'éviction.
public override void Set (string key, object value, System.Runtime.Caching.CacheItemPolicy policy, string regionName = default);
override this.Set : string * obj * System.Runtime.Caching.CacheItemPolicy * string -> unit
Public Overrides Sub Set (key As String, value As Object, policy As CacheItemPolicy, Optional regionName As String = Nothing)
Paramètres
- key
- String
Identificateur unique de l'entrée de cache à insérer.
- 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. Ce paramètre est null
par défaut, car la classe MemoryCache n'implémente pas de régions.
Exceptions
key
a la valeur null
.
- ou -
value
a la valeur null
.
- ou -
La référence de rappel passée à la méthode helper dans la propriété UpdateCallback est null
.
Combinaison non valide d’arguments pour l’entrée de cache. Cela se produit si les détails d’expiration suivants sont définis sur l’objet de stratégie pour l’entrée de cache :
Si les valeurs d’expiration absolue et décalée de l’objet CacheItemPolicy sont autres que les valeurs par défaut de InfiniteAbsoluteExpiration et NoSlidingExpiration. Cela est dû au fait que la classe MemoryCache ne prend pas en charge les entrées d’expiration basées à la fois sur une expiration absolue et 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.
Si le rappel de suppression et le rappel de mise à jour sont spécifiés sur la classe 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 -
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.
regionName
n’est pas un null
.
Remarques
Comme d’autres Set surcharges de méthode, la Set méthode place toujours une valeur de cache dans le cache, qu’une entrée correspondante existe déjà. Si l’entrée spécifiée n’existe pas dans le cache, une nouvelle entrée de cache est insérée. Si l’entrée spécifiée existe, elle est mise à jour.
La suppression d’une entrée déclenche tous les moniteurs de modification associés. Si l’élément supprimé a été associé à un objet ou à un CacheItemUpdateCallback objet, la raison de la suppression passée aux rappels est contenue dans la Removed propriété .CacheItemRemovedCallback