Cache.Add Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Agrega el elemento especificado al Cache objeto con dependencias, directivas de expiración y prioridad, y un delegado que puede usar para notificar a la aplicación cuando se quita el elemento insertado de 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
Parámetros
- key
- String
Clave de caché usada para hacer referencia al elemento.
- value
- Object
Elemento que se va a agregar a la memoria caché.
- dependencies
- CacheDependency
Dependencias de clave de archivo o caché para el elemento. Cuando cambia cualquier dependencia, el objeto deja de ser válido y se quita de la memoria caché. Si no hay dependencias, este parámetro contiene null.
- absoluteExpiration
- DateTime
Hora en la que expira el objeto agregado y se quita de la memoria caché. Si usa la expiración deslizante, el absoluteExpiration parámetro debe ser NoAbsoluteExpiration.
- slidingExpiration
- TimeSpan
Intervalo entre la hora en que se accedió por última vez al objeto agregado y la hora en que expira ese objeto. Si este valor es el equivalente de 20 minutos, el objeto expira y se quita de la memoria caché 20 minutos después de que se acceda por última vez. Si usa la expiración absoluta, el slidingExpiration parámetro debe ser NoSlidingExpiration.
- priority
- CacheItemPriority
Costo relativo del objeto, expresado por la CacheItemPriority enumeración. La memoria caché usa este valor cuando expulsa objetos; Los objetos con un costo menor se quitan de la memoria caché antes de que los objetos con un costo mayor.
- onRemoveCallback
- CacheItemRemovedCallback
Delegado al que, si se proporciona, se llama cuando se quita un objeto de la memoria caché. Puede usarlo para notificar a las aplicaciones cuando sus objetos se eliminan de la memoria caché.
Devoluciones
Objeto que representa el elemento que se agregó si el elemento se almacenó previamente en la memoria caché; de lo contrario, null.
Excepciones
El key parámetro o value se establece en null.
El slidingExpiration parámetro se establece en menor o más de TimeSpan.Zero un año.
Los absoluteExpiration parámetros y slidingExpiration se establecen para el elemento que está intentando agregar a Cache.
Ejemplos
En el ejemplo siguiente se crea un AddItemToCache método . Cuando se llama a false este método, establece una itemRemoved propiedad en y registra un onRemove método con una nueva instancia del CacheItemRemovedCallback delegado. La firma del delegado se usa en el RemovedCallback método . A continuación, el AddItemToCache método comprueba el valor asociado a la Key1 clave en la memoria caché. Si el valor es null, el Add método coloca un elemento en la memoria caché con una clave de Key1, un valor de , una expiración absoluta de Value 160 segundos y una prioridad de caché alta. También usa el onRemove método como argumento. Esto permite RemovedCallback llamar al método cuando se quita este elemento de la memoria caché.
Note
Para obtener ejemplos de cómo usar la CacheDependency clase y el CacheItemRemovedCallback delegado, consulte Almacenamiento en caché de datos de la aplicación.
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
Comentarios
Las llamadas a este método producirán un error en modo silencioso si un elemento con el mismo key parámetro ya está almacenado en .Cache Para sobrescribir un elemento existente Cache mediante el mismo key parámetro, use el Insert método .
No se pueden establecer los absoluteExpiration parámetros y slidingExpiration . Si piensa que el elemento de caché expire en un momento específico, establezca el absoluteExpiration parámetro en la hora específica y el slidingExpiration parámetro en NoSlidingExpiration.
Si piensa que el elemento de caché expire después de que haya transcurrido una determinada cantidad de tiempo desde que se accedió por última vez al elemento, establezca el slidingExpiration parámetro en el intervalo de expiración y el absoluteExpiration parámetro en NoAbsoluteExpiration.