Este artículo se tradujo de forma manual. Mueva el puntero sobre las frases del artículo para ver el texto original.
Traducción
Original
Este tema aún no ha recibido ninguna valoración - Valorar este tema

Cache (Clase)

Implementa la caché para una aplicación Web. Esta clase no puede heredarse.

System.Object
  System.Web.Caching.Cache

Espacio de nombres:  System.Web.Caching
Ensamblado:  System.Web (en System.Web.dll)
public sealed class Cache : IEnumerable

El tipo Cache expone los siguientes miembros.

  Nombre Descripción
Método público Cache Infraestructura. Inicializa una nueva instancia de la clase Cache.
Arriba
  Nombre Descripción
Propiedad pública Count Obtiene el número de elementos almacenados en caché.
Propiedad pública EffectivePercentagePhysicalMemoryLimit Obtiene el porcentaje de memoria física que puede utilizar una aplicación antes de que ASP.NET comience a quitar elementos de la caché.
Propiedad pública EffectivePrivateBytesLimit Obtiene el número de bytes disponible para la caché.
Propiedad pública Item Obtiene o establece el elemento en caché de la clave especificada.
Arriba
  Nombre Descripción
Método público Add Agrega el elemento especificado al objeto Cache con directivas de dependencias, expiración y prioridad, así como un delegado que se puede utilizar para notificar a la aplicación cuándo el elemento insertado se quita de la memoria Cache.
Método público Equals(Object) Determina si el objeto Object especificado es igual al objeto Object actual. (Se hereda de Object).
Método protegido Finalize Permite que un objeto intente liberar recursos y realizar otras operaciones de limpieza antes de ser reclamado por la recolección de elementos no utilizados. (Se hereda de Object).
Método público Get Recupera el elemento especificado del objeto Cache.
Método público GetEnumerator Recupera un enumerador de diccionario utilizado para recorrer en iteración las claves y sus valores contenidos en la caché.
Método público GetHashCode Actúa como función hash para un tipo concreto. (Se hereda de Object).
Método público GetType Obtiene el objeto Type de la instancia actual. (Se hereda de Object).
Método público Insert(String, Object) Inserta un elemento en el objeto Cache con una clave de caché para hacer referencia a su ubicación y utilizando los valores predeterminados que proporciona la enumeración de CacheItemPriority.
Método público Insert(String, Object, CacheDependency) Inserta un objeto en Cache que tiene dependencias de archivo o de clave.
Método público Insert(String, Object, CacheDependency, DateTime, TimeSpan) Inserta un objeto en Cache con dependencias y directivas de expiración.
Método público Insert(String, Object, CacheDependency, DateTime, TimeSpan, CacheItemUpdateCallback) Inserta un objeto en el objeto Cache junto con las dependencias, las directivas de expiración y un delegado que puede usar para notificar a la aplicación antes de que se quite el elemento de la memoria caché.
Método público Insert(String, Object, CacheDependency, DateTime, TimeSpan, CacheItemPriority, CacheItemRemovedCallback) Inserta un objeto en el objeto Cache con directivas de dependencias, expiración y prioridad, así como un delegado que se puede utilizar para notificar a la aplicación cuándo se quita de la memoria Cache el elemento insertado.
Método protegido MemberwiseClone Crea una copia superficial del objeto Object actual. (Se hereda de Object).
Método público Remove Quita el elemento especificado del objeto Cache de la aplicación.
Método público ToString Devuelve una cadena que representa el objeto actual. (Se hereda de Object).
Arriba
  Nombre Descripción
Método de extensión público AsParallel Habilita la paralelización de una consulta. (Definido por ParallelEnumerable).
Método de extensión público AsQueryable Convierte una interfaz IEnumerable en IQueryable. (Definido por Queryable).
Método de extensión público Cast<TResult> Convierte los elementos de IEnumerable en el tipo especificado. (Definido por Enumerable).
Método de extensión público OfType<TResult> Filtra los elementos de IEnumerable en función de un tipo especificado. (Definido por Enumerable).
Arriba
  Nombre Descripción
Campo público Miembro estático NoAbsoluteExpiration Se utiliza en el parámetro absoluteExpiration de una llamada al método Insert para indicar que el elemento no debe expirar nunca. Este campo es de sólo lectura.
Campo público Miembro estático NoSlidingExpiration Se utiliza como el parámetro slidingExpiration en una llamada al método Insert o Addpara deshabilitar las expiraciones variables. Este campo es de sólo lectura.
Arriba
  Nombre Descripción
Implementación explícita de interfaces Método privado IEnumerable.GetEnumerator Devuelve un enumerador que puede recorrer en iteración la colección de objetos Cache.
Arriba

Se crea una instancia de esta clase por dominio de aplicación y ésta es válida mientras que el dominio de la aplicación esté activo. Existe información disponible acerca de una instancia de esta clase a través de la propiedad Cache del objeto HttpContext o de la propiedad Cache del objeto Page.

Nota Nota

La clase Cache no está diseñada para utilizarla con aplicaciones que no sean ASP.NET. Se ha diseñado y probado para su uso en ASP.NET a fin de proporcionar almacenamiento en caché para las aplicaciones Web. Para otros tipos de aplicaciones, como aplicaciones de consola o aplicaciones de Windows Forms, use la clase ObjectCache.

El ejemplo siguiente consiste en una página que proporciona a los usuarios el valor asignado a un elemento de la caché y, a continuación, notifica cuándo se quita el elemento de la caché. Crea un método RemovedCallback, que tiene la firma del delegado CacheItemRemovedCallback, para notificar a los usuarios cuándo se elimina el elemento de la caché, y utiliza la enumeración CacheItemRemovedReason para explicarles por qué se eliminó. Además, utiliza la propiedad Cache.Item para agregar objetos a la caché y recuperar el valor de esos objetos. En el método AddItemToCache, utiliza el método Cache.Add para agregar un elemento a la caché. Para utilizar el delegado CacheItemRemovedCallback, debe agregar un elemento a la caché con este método o con el método Cache.Insert, para que ese ASP.NET pueda realizar llamadas apropiadas al método de forma automática cuando se elimina el elemento. El método RemoveItemFromCache personalizado utiliza el método Cache.Remove para eliminar explícitamente el elemento de la caché, lo que provoca la invocación del método RemovedCallback.


<html>
 <Script runat=server language="C#">
    static bool itemRemoved = false;
    static CacheItemRemovedReason reason;
    CacheItemRemovedCallback onRemove = null;

    public void RemovedCallback(String k, Object v, CacheItemRemovedReason r){
      itemRemoved = true;
      reason = r;
    }

    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 void RemoveItemFromCache(Object sender, EventArgs e) {
        if(Cache["Key1"] != null)
          Cache.Remove("Key1");
    }
 </Script>
 <body>
  <Form runat="server">
   <input type=submit OnServerClick="AddItemToCache" value="Add Item To Cache" runat="server"/>
   <input type=submit OnServerClick="RemoveItemFromCache" value="Remove Item From Cache" runat="server"/>
  </Form>
  <% if (itemRemoved) {
        Response.Write("RemovedCallback event raised.");
        Response.Write("<BR>");
        Response.Write("Reason: <B>" + reason.ToString() + "</B>");
     }
     else {
        Response.Write("Value of cache key: <B>" + Server.HtmlEncode(Cache["Key1"] as string) + "</B>");
     }
  %>
 </body>
</html>


.NET Framework

Compatible con: 4, 3.5, 3.0, 2.0, 1.1, 1.0

Windows 7, Windows Vista SP1 o posterior, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (no se admite Server Core), Windows Server 2008 R2 (se admite Server Core con SP1 o posterior), Windows Server 2003 SP2

.NET Framework no admite todas las versiones de todas las plataformas. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

Este tipo es seguro para la ejecución de subprocesos.

¿Le ha resultado útil?
(Caracteres restantes: 1500)
Contenido de la comunidad Agregar