CacheItem Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Представляет отдельную запись в кэше.
public ref class CacheItem
public class CacheItem
type CacheItem = class
Public Class CacheItem
- Наследование
-
CacheItem
Примеры
В следующем примере показано, как использовать CacheItem класс для хранения содержимого файла в качестве записи кэша.
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
Комментарии
Класс CacheItem предоставляет логическое представление записи кэша, которая может включать области с помощью RegionName свойства . В реализации кэша по умолчанию ASP.NET запись кэша представляет собой пару "ключ-значение".
Записи в кэше не CacheItem являются экземплярами. Вместо этого поставщик кэша может хранить записи кэша в любом удобном внутреннем формате. Однако API кэша требует, чтобы поставщики кэша могли преобразовывать записи кэша в CacheItem экземпляры (и наоборот).
Пользовательские реализации кэша могут наследоваться от CacheItem класса , предоставляя дополнительные сведения о записях кэша.
Примечания для тех, кто наследует этот метод
Класс ObjectCache содержит методы, поддерживающие добавление, получение и обновление данных кэша, и все эти методы имеют перегрузки, поддерживающие CacheItem класс . Таким образом, пользовательская реализация кэша может создать расширенный CacheItem класс и использовать этот расширенный класс вместе с существующим ObjectCache API для записей кэша.
Конструкторы
CacheItem(String) |
Инициализирует новый экземпляр класса CacheItem, используя заданный ключ записи кэша. |
CacheItem(String, Object) |
Инициализирует новый экземпляр класса CacheItem, используя заданный ключ и значение записи кэша. |
CacheItem(String, Object, String) |
Инициализирует новый экземпляр класса CacheItem, используя заданный ключ, значение и область записи кэша. |
Свойства
Key |
Получает или задает уникальный идентификатор экземпляра CacheItem. |
RegionName |
Получает или задает имя области кэша, содержащей запись CacheItem. |
Value |
Получает или задает данные экземпляра CacheItem. |
Методы
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |