Compartir por


CacheItem Clase

Definición

Representa una entrada de caché individual en la memoria caché.

public ref class CacheItem
public class CacheItem
type CacheItem = class
Public Class CacheItem
Herencia
CacheItem

Ejemplos

En el ejemplo siguiente se muestra cómo usar la CacheItem clase para almacenar el contenido de un archivo como entrada de caché.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Runtime.Caching;
using System.IO;

public partial class _Default : System.Web.UI.Page
{

    protected void Button1_Click(object sender, EventArgs e)
    {
        ObjectCache cache = MemoryCache.Default;

        CacheItem fileContents = cache.GetCacheItem("filecontents");

        if (fileContents == null)
        {
            CacheItemPolicy policy = new CacheItemPolicy();

            List<string> filePaths = new List<string>();
            string cachedFilePath = Server.MapPath("~") +
                "\\cacheText.txt";

            filePaths.Add(cachedFilePath);

            policy.ChangeMonitors.Add(new HostFileChangeMonitor(filePaths));

            // Fetch the file contents
            string fileData = File.ReadAllText(cachedFilePath);

            fileContents = new CacheItem("filecontents", fileData);

            cache.Set(fileContents, policy);
        }
        Label1.Text = (fileContents.Value as string);
    }
}
Imports System.Runtime.Caching
Imports System.IO

Partial Class _Default
    Inherits System.Web.UI.Page

    Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click

        Dim cache As ObjectCache = MemoryCache.Default

        Dim fileContents As CacheItem = cache.GetCacheItem("filecontents")

        If fileContents Is Nothing Then
            Dim policy As New CacheItemPolicy()

            Dim filePaths As New List(Of String)()

            Dim CachedFilePaths As String = Server.MapPath("~") & "\cacheText.txt"

                filePaths.Add(CachedFilePaths)

            policy.ChangeMonitors.Add(New HostFileChangeMonitor(filePaths))

            ' Fetch the file contents 
            Dim fileData As String = File.ReadAllText(CachedFilePaths)

            fileContents = New CacheItem("filecontents", fileData)

            cache.Set(fileContents, policy)
        End If
        Label1.Text = TryCast(fileContents.Value, String)
    End Sub
End Class

Comentarios

La CacheItem clase proporciona una representación lógica de una entrada de caché, que puede incluir regiones mediante la RegionName propiedad . En la implementación predeterminada de ASP.NET caché, una entrada de caché es un par clave-valor.

Las entradas de la memoria caché no CacheItem son instancias. En su lugar, el proveedor de caché puede almacenar entradas de caché en cualquier formato interno que sea conveniente. Sin embargo, la API de caché requiere que los proveedores de caché puedan convertir entradas de caché en CacheItem instancias (y viceversa).

Las implementaciones de caché personalizadas pueden heredar de la CacheItem clase proporcionar información adicional sobre las entradas de caché.

Notas a los desarrolladores de herederos

La ObjectCache clase tiene métodos que admiten la adición, captura y actualización de datos de caché, y todos estos métodos tienen sobrecargas que admiten la CacheItem clase . Por lo tanto, una implementación de caché personalizada puede crear una clase extendida CacheItem y usar esa clase extendida junto con la API existente ObjectCache para las entradas de caché.

Constructores

Nombre Description
CacheItem(String, Object, String)

Inicializa una nueva CacheItem instancia mediante la clave, el valor y la región especificados de la entrada de caché.

CacheItem(String, Object)

Inicializa una nueva CacheItem instancia mediante la clave especificada y un valor de la entrada de caché.

CacheItem(String)

Inicializa una nueva CacheItem instancia mediante la clave especificada de una entrada de caché.

Propiedades

Nombre Description
Key

Obtiene o establece un identificador único para una CacheItem instancia de .

RegionName

Obtiene o establece el nombre de una región de la memoria caché que contiene una CacheItem entrada.

Value

Obtiene o establece los datos de una CacheItem instancia de .

Métodos

Nombre Description
Equals(Object)

Determina si el objeto especificado es igual al objeto actual.

(Heredado de Object)
GetHashCode()

Actúa como función hash predeterminada.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
MemberwiseClone()

Crea una copia superficial del Objectactual.

(Heredado de Object)
ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Se aplica a

Consulte también