Partager via


CacheItem Classe

Définition

Représente une entrée individuelle du cache.

public ref class CacheItem
public class CacheItem
type CacheItem = class
Public Class CacheItem
Héritage
CacheItem

Exemples

L’exemple suivant montre comment utiliser la CacheItem classe pour stocker le contenu d’un fichier en tant qu’entrée 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

Remarques

La CacheItem classe fournit une représentation logique d’une entrée de cache, qui peut inclure des régions à l’aide de la RegionName propriété . Dans l’implémentation du cache par défaut ASP.NET, une entrée de cache est une paire clé/valeur.

Les entrées dans le cache ne sont pas CacheItem des instances. Au lieu de cela, le fournisseur de cache peut stocker les entrées de cache dans n’importe quel format interne qui est pratique. Toutefois, l’API de cache nécessite que les fournisseurs de cache puissent convertir les entrées de cache en CacheItem instances (et vice versa).

Les implémentations de cache personnalisées peuvent hériter de la CacheItem classe fournissent des informations supplémentaires sur les entrées de cache.

Notes pour les héritiers

La ObjectCache classe a des méthodes qui prennent en charge l’ajout, l’extraction et la mise à jour des données de cache, et toutes ces méthodes ont des surcharges qui prennent en charge la CacheItem classe. Par conséquent, une implémentation de cache personnalisée peut créer une classe étendue CacheItem et utiliser cette classe étendue avec l’API existante pour les ObjectCache entrées de cache.

Constructeurs

CacheItem(String)

Initialise une nouvelle instance de la classe CacheItem à l'aide de la clé d'entrée de cache spécifiée.

CacheItem(String, Object)

Initialise une nouvelle instance CacheItem à l'aide de la clé spécifiée et d'une valeur d'entrée de cache.

CacheItem(String, Object, String)

Initialise une nouvelle instance CacheItem à l'aide de la clé, de la valeur et de la région d'entrée de cache spécifiées.

Propriétés

Key

Obtient ou définit un identificateur unique pour une instance CacheItem.

RegionName

Obtient ou définit le nom d'une région du cache qui contient une entrée CacheItem.

Value

Obtient ou définit les données pour une instance CacheItem.

Méthodes

Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
ToString()

Retourne une chaîne qui représente l'objet actuel.

(Hérité de Object)

S’applique à

Voir aussi