Compartilhar via


CacheItem Classe

Definição

Representa uma entrada de cache individual no cache.

public ref class CacheItem
public class CacheItem
type CacheItem = class
Public Class CacheItem
Herança
CacheItem

Exemplos

O exemplo a seguir mostra como usar a CacheItem classe para armazenar o conteúdo de um arquivo como uma entrada de cache.

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

Comentários

A CacheItem classe fornece uma representação lógica de uma entrada de cache, que pode incluir regiões usando a RegionName propriedade . No padrão ASP.NET implementação de cache, uma entrada de cache é um par chave/valor.

As entradas no cache não CacheItem são instâncias. Em vez disso, o provedor de cache pode armazenar entradas de cache em qualquer formato interno conveniente. No entanto, a API de cache exige que os provedores de cache possam converter entradas de cache em CacheItem instâncias (e vice-versa).

As implementações de cache personalizadas podem herdar da CacheItem classe para fornecer informações adicionais sobre entradas de cache.

Notas aos Herdeiros

A ObjectCache classe tem métodos que dão suporte à adição, busca e atualização de dados de cache, e todos esses métodos têm sobrecargas que dão suporte à CacheItem classe . Portanto, uma implementação de cache personalizada pode criar uma classe estendida CacheItem e usar essa classe estendida junto com a API existente ObjectCache para entradas de cache.

Construtores

CacheItem(String)

Inicializa uma nova instância de CacheItem usando a chave especificada de uma entrada de cache.

CacheItem(String, Object)

Inicializa uma nova instância de CacheItem usando a chave especificada e um valor da entrada de cache.

CacheItem(String, Object, String)

Inicializa uma nova instância de CacheItem usando a chave, o valor e a região especificados da entrada de cache.

Propriedades

Key

Obtém ou define um identificador exclusivo para uma instância de CacheItem.

RegionName

Obtém ou define o nome de uma região no cache que contém uma entrada CacheItem.

Value

Obtém ou define os dados para uma instância de CacheItem.

Métodos

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)

Aplica-se a

Confira também