MemoryCache.Set Método

Definición

Inserta una entrada en la memoria caché.Inserts a cache entry into the cache.

Sobrecargas

Set(CacheItem, CacheItemPolicy)

Inserta una entrada en la memoria caché utilizando una instancia de CacheItem para proporcionar la clave y el valor de la entrada.Inserts a cache entry into the cache by using a CacheItem instance to supply the key and value for the cache entry.

Set(String, Object, DateTimeOffset, String)

Inserta una entrada en la memoria caché utilizando una clave, un valor y los detalles especificados sobre la expiración basada en el tiempo.Inserts a cache entry into the cache by using a key and a value and specifies time-based expiration details.

Set(String, Object, CacheItemPolicy, String)

Inserta una entrada en la memoria caché utilizando una clave, un valor y los detalles referentes a la expulsión.Inserts a cache entry into the cache by using a key and a value and eviction.

Comentarios

Si la entrada especificada no existe, se crea.If the specified entry does not exist, it is created. Si la entrada especificada existe, se actualiza.If the specified entry exists, it is updated.

Set(CacheItem, CacheItemPolicy)

Inserta una entrada en la memoria caché utilizando una instancia de CacheItem para proporcionar la clave y el valor de la entrada.Inserts a cache entry into the cache by using a CacheItem instance to supply the key and value for the cache entry.

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)

Parámetros

item
CacheItem

Objeto que representa una entrada de caché que se va a insertar.An object that represents a cache entry to insert.

policy
CacheItemPolicy

Objeto que contiene detalles sobre la expulsión de la entrada de caché.An object that contains eviction details for the cache entry. Este objeto proporciona más opciones de expulsión que una simple expiración absoluta.This object provides more options for eviction than a simple absolute expiration.

Excepciones

item es null.item is null.

o bien-or- La propiedad Key es null.The Key property is null.

o bien-or- La propiedad Value es null.The Value property is null.

Se pasó una combinación no válida de argumentos para la entrada de la memoria caché.An invalid combination of arguments for the cache entry was passed. Esto se produce si los detalles de expiración siguientes se establecen en el objeto de directiva para la entrada de la memoria caché:This occurs if the following expiration details are set on the policy object for the cache entry: - Si ambos los valores de expiración absolutos y variables del objeto CacheItemPolicy se establecen en valores distintos de los valores predeterminados de los campos InfiniteAbsoluteExpiration y NoSlidingExpiration.- If both the absolute and sliding expiration values of the CacheItemPolicy object are set to values other than the defaults of InfiniteAbsoluteExpiration and NoSlidingExpiration fields. La clase MemoryCache no puede establecer una directiva de caducidad basada en una combinación de una fecha de expiración absoluta y una fecha de expiración variable.The MemoryCache class cannot set expiration policy based on both an absolute expiration and a sliding expiration. Se puede establecer sólo uno valor de expiración explícitamente al usar la clase MemoryCache.Only one expiration setting can be explicitly set when you use the MemoryCache class. El otro valor se debe establecer en InfiniteAbsoluteExpiration o en la propiedad NoSlidingExpiration.The other setting must be set to InfiniteAbsoluteExpiration or NoSlidingExpiration property.

- Si se especifican la devolución de llamada de eliminación y la devolución de llamada de actualización para el objeto CacheItemPolicy.- If both the removal callback and the update callback are specified for CacheItemPolicy object. La clase MemoryCache sólo permite usar un tipo de devolución de llamada por entrada de la memoria caché.The MemoryCache class only supports using one type of callback per cache entry.

La propiedad SlidingExpiration está establecida en un valor menor que Zero.The SlidingExpiration property is set to a value less than Zero.

o bien-or- La propiedad SlidingExpiration se establece en un valor superior a un año.The SlidingExpiration property is set to a value greater than one year.

o bien-or- Priority no es un valor de la enumeración CacheItemPriority.The Priority is not a value of the CacheItemPriority enumeration.

Comentarios

Al igual Set que otras sobrecargas de método, el Set método siempre coloca un valor de caché en la memoria caché, independientemente de si ya existe una entrada con la misma clave.Like other Set method overloads, the Set method always puts a cache value in the cache, regardless whether an entry already exists that has the same key. Si la entrada especificada no existe en la memoria caché, se inserta una nueva entrada de caché.If the specified entry does not exist in the cache, a new cache entry is inserted. Si la entrada especificada ya existe, se actualiza su valor.If the specified entry already exists, its value is updated.

Se aplica a

Set(String, Object, DateTimeOffset, String)

Inserta una entrada en la memoria caché utilizando una clave, un valor y los detalles especificados sobre la expiración basada en el tiempo.Inserts a cache entry into the cache by using a key and a value and specifies time-based expiration details.

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)

Parámetros

key
String

Identificador único para la entrada de caché que se va a insertar.A unique identifier for the cache entry to insert.

value
Object

Datos de la entrada de caché.The data for the cache entry.

absoluteExpiration
DateTimeOffset

Fecha y hora fijas a las que expirará la entrada de caché.The fixed date and time at which the cache entry will expire.

regionName
String

Región con nombre de la memoria caché a la que se puede agregar una entrada de caché.A named region in the cache to which a cache entry can be added. No pase un valor para este parámetro.Do not pass a value for this parameter. De manera predeterminada, este parámetro es null porque la clase MemoryCache no implementa regiones.This parameter is null by default, because the MemoryCache class does not implement regions.

Excepciones

regionName no es null.regionName is not null.

key es null.key is null.

O bien-or- Value es null.Value is null.

- Se pasó una combinación no válida de argumentos para la entrada de la memoria caché.- An invalid combination of arguments for the cache entry was passed. Esto se produce si los detalles de expiración siguientes se establecen en el objeto de directiva para la entrada de la memoria caché:This occurs if the following expiration details are set on the policy object for the cache entry: - Si ambos los valores de expiración absolutos y variables del objeto CacheItemPolicy se establecen en valores distintos de los valores predeterminados de InfiniteAbsoluteExpiration y NoSlidingExpiration.- If both the absolute and sliding expiration values on CacheItemPolicy object are set to values other than the defaults of InfiniteAbsoluteExpiration and NoSlidingExpiration. Esto se produce porque la clase MemoryCache no permite entradas de expiración basadas tanto en la fecha de expiración absoluta como en la variable.This occurs because the MemoryCache class does not support expiring entries based on both an absolute and a sliding expiration. Se puede establecer sólo uno valor de expiración explícitamente al usar la clase MemoryCache.Only one expiration setting can be explicitly set when you use the MemoryCache class. El otro valor se debe establecer en InfiniteAbsoluteExpiration o NoSlidingExpiration.The other setting must be set to InfiniteAbsoluteExpiration or NoSlidingExpiration.

- Si la devolución de llamada de eliminación y la devolución de llamada de actualización se especifican en el objeto CacheItemPolicy.- If both the removal callback and the update callback are specified on CacheItemPolicy object. La clase MemoryCache sólo permite usar un tipo de devolución de llamada por entrada de la memoria caché.The MemoryCache class only supports using one type of callback per cache entry.

La propiedad SlidingExpiration está establecida en un valor menor que Zero.The SlidingExpiration property is set to a value less than Zero.

o bien-or- La propiedad SlidingExpiration se establece en un valor superior a un año.The SlidingExpiration property is set to a value greater than one year.

o bien-or- - La propiedad Priority no es un valor de la enumeración CacheItemPriority.- The Priority property is not a value of the CacheItemPriority enumeration.

Comentarios

Al igual Set que otras sobrecargas de método, el Set método siempre coloca un valor de caché en la memoria caché, independientemente de si ya existe una entrada con la misma clave.Like other Set method overloads, the Set method always puts a cache value in the cache, regardless whether an entry already exists with the same key. Si la entrada especificada no existe, se inserta una nueva entrada de caché.If the specified entry does not exist, a new cache entry is inserted. Si la entrada especificada existe, se actualiza.If the specified entry exists, it is updated.

El absoluteExpiration parámetro indica cuándo se debe quitar la entrada de la memoria caché.The absoluteExpiration parameter indicates when the entry should be removed from the cache.

La eliminación de una entrada desencadena cualquier monitor de cambios asociado.Removing an entry triggers any associated change monitors. Si el elemento quitado se asoció con un CacheItemUpdateCallback objeto o un CacheItemRemovedCallback objeto, el motivo de la eliminación que se pasa a las devoluciones de llamada se incluye en la Removed propiedad.If the removed item was associated with a CacheItemUpdateCallback object or CacheItemRemovedCallback object, the reason for removal that is passed to the callbacks is contained in the Removed property.

Se aplica a

Set(String, Object, CacheItemPolicy, String)

Inserta una entrada en la memoria caché utilizando una clave, un valor y los detalles referentes a la expulsión.Inserts a cache entry into the cache by using a key and a value and eviction.

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)

Parámetros

key
String

Identificador único para la entrada de caché que se va a insertar.A unique identifier for the cache entry to insert.

value
Object

Datos de la entrada de caché.The data for the cache entry.

policy
CacheItemPolicy

Objeto que contiene detalles sobre la expulsión de la entrada de caché.An object that contains eviction details for the cache entry. Este objeto proporciona más opciones de expulsión que una simple expiración absoluta.This object provides more options for eviction than a simple absolute expiration.

regionName
String

Región con nombre de la memoria caché a la que se puede agregar una entrada de caché.A named region in the cache to which a cache entry can be added. No pase un valor para este parámetro.Do not pass a value for this parameter. De manera predeterminada, este parámetro es null porque la clase MemoryCache no implementa regiones.This parameter is null by default, because the MemoryCache class does not implement regions.

Excepciones

key es null.key is null.

o bien-or- value es nullvalue is null

o bien-or- La referencia de devolución de llamada que se pasó al método del asistente en la propiedad UpdateCallback es null.The callback reference that was passed to the helper method in the UpdateCallback property is null.

- Ya existe una combinación no válida de argumentos para la entrada de la memoria caché.- An invalid combination of arguments for the cache entry exists. Esto se produce si los detalles de expiración siguientes se establecen en el objeto de directiva para la entrada de la memoria caché:This occurs if the following expiration details are set on the policy object for the cache entry: - Si ambos los valores de expiración absolutos y variables del objeto CacheItemPolicy se establecen en valores distintos de los valores predeterminados de InfiniteAbsoluteExpiration y NoSlidingExpiration.- If both the absolute and sliding expiration values on CacheItemPolicy object are set to values other than the defaults of InfiniteAbsoluteExpiration and NoSlidingExpiration. Esto es porque la clase MemoryCache no permite entradas de expiración basadas tanto en la fecha de expiración absoluta como en la variable.This is because the MemoryCache class does not support expiring entries based on both an absolute and a sliding expiration. Se puede establecer sólo uno valor de expiración explícitamente al usar la clase MemoryCache.Only one expiration setting can be explicitly set when you use the MemoryCache class. El otro valor se debe establecer en InfiniteAbsoluteExpiration o NoSlidingExpiration.The other setting must be set to InfiniteAbsoluteExpiration or NoSlidingExpiration.

- Si la devolución de llamada de eliminación y la devolución de llamada de actualización se especifican en la clase CacheItemPolicy.- If both the removal callback and the update callback are specified on CacheItemPolicy class. La clase MemoryCache sólo permite usar un tipo de devolución de llamada por entrada de la memoria caché.The MemoryCache class only supports using one type of callback per cache entry.

La propiedad SlidingExpiration está establecida en un valor menor que Zero.The SlidingExpiration property is set to a value less than Zero.

o bien-or- La propiedad SlidingExpiration se establece en un valor superior a un año.The SlidingExpiration property is set to a value greater than one year.

o bien-or- La propiedad Priority no es un valor de la enumeración CacheItemPriority.The Priority property is not a value of the CacheItemPriority enumeration.

regionName no es null.regionName is not null.

Comentarios

Al igual Set que otras sobrecargas de método, el Set método siempre coloca un valor de caché en la memoria caché, independientemente de si ya existe una entrada coincidente.Like other Set method overloads, the Set method always puts a cache value in the cache, regardless whether a matching entry already exists. Si la entrada especificada no existe en la memoria caché, se inserta una nueva entrada de caché.If the specified entry does not exist in the cache, a new cache entry is inserted. Si la entrada especificada existe, se actualiza.If the specified entry exists, it is updated.

La eliminación de una entrada desencadena cualquier monitor de cambios asociado.Removing an entry triggers any associated change monitors. Si el elemento quitado se asoció con un CacheItemUpdateCallback objeto o un CacheItemRemovedCallback objeto, el motivo de la eliminación que se pasa a las devoluciones de llamada se incluye en la Removed propiedad.If the removed item was associated with a CacheItemUpdateCallback object or CacheItemRemovedCallback object, the reason for removal that is passed to the callbacks is contained in the Removed property.

Se aplica a