CacheItem Klass

Definition

Representerar en enskild cachepost i cacheminnet.

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

Exempel

I följande exempel visas hur du använder CacheItem klassen för att lagra innehållet i en fil som en cachepost.

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

Kommentarer

Klassen CacheItem ger en logisk representation av en cachepost, som kan innehålla regioner med hjälp RegionName av egenskapen . I standardimplementeringen för ASP.NET cache är en cachepost ett nyckel/värde-par.

Poster i cacheminnet är inte CacheItem instanser. I stället kan cacheprovidern lagra cacheposter i valfritt internt format som är praktiskt. Cache-API:et kräver dock att cacheprovidrar kan konvertera cacheposter till CacheItem instanser (och vice versa).

Anpassade cacheimplementeringar kan ärva från CacheItem klassen och ge ytterligare information om cacheposter.

Anteckningar till arvingar

Klassen ObjectCache har metoder som stöder tillägg, hämtning och uppdatering av cachedata, och alla dessa metoder har överlagringar som stöder CacheItem klassen. Därför kan en anpassad cacheimplementering skapa en utökad CacheItem klass och använda den utökade klassen tillsammans med det befintliga ObjectCache API:et för cacheposter.

Konstruktorer

Name Description
CacheItem(String, Object, String)

Initierar en ny CacheItem instans med den angivna nyckeln, värdet och regionen för cacheposten.

CacheItem(String, Object)

Initierar en ny CacheItem instans med den angivna nyckeln och värdet för cacheposten.

CacheItem(String)

Initierar en ny CacheItem instans med den angivna nyckeln för en cachepost.

Egenskaper

Name Description
Key

Hämtar eller anger en unik identifierare för en CacheItem instans.

RegionName

Hämtar eller anger namnet på en region i cacheminnet som innehåller en CacheItem post.

Value

Hämtar eller anger data för en CacheItem instans.

Metoder

Name Description
Equals(Object)

Avgör om det angivna objektet är lika med det aktuella objektet.

(Ärvd från Object)
GetHashCode()

Fungerar som standard-hash-funktion.

(Ärvd från Object)
GetType()

Hämtar den aktuella instansen Type .

(Ärvd från Object)
MemberwiseClone()

Skapar en ytlig kopia av den aktuella Object.

(Ärvd från Object)
ToString()

Returnerar en sträng som representerar det aktuella objektet.

(Ärvd från Object)

Gäller för

Se även