Compartir vía


CacheItem Clase

Definición

Representa una entrada de 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 cómodo. 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

CacheItem(String)

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

CacheItem(String, Object)

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

CacheItem(String, Object, String)

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

Propiedades

Key

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

RegionName

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

Value

Obtiene o establece los datos de una instancia de CacheItem.

Métodos

Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.

(Heredado de Object)
GetHashCode()

Sirve como la función hash predeterminada.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Se aplica a

Consulte también