FileChangeMonitor Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Reprezentuje obiekt monitorujący zmiany w plikach.
public ref class FileChangeMonitor abstract : System::Runtime::Caching::ChangeMonitor
public abstract class FileChangeMonitor : System.Runtime.Caching.ChangeMonitor
type FileChangeMonitor = class
inherit ChangeMonitor
Public MustInherit Class FileChangeMonitor
Inherits ChangeMonitor
- Dziedziczenie
- Pochodne
Przykłady
W poniższym przykładzie pokazano, jak utworzyć element pamięci podręcznej, który używa HostFileChangeMonitor obiektu do monitorowania stanu danych źródłowych (pliku) w systemie plików. Klasa HostFileChangeMonitor dziedziczy z FileChangeMonitor klasy. Wpis pamięci podręcznej jest definiowany przy użyciu CacheItemPolicy obiektu, który zapewnia eksmisję i szczegóły wygaśnięcia wpisu pamięci podręcznej.
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_Click1(object sender, EventArgs e)
{
ObjectCache cache = MemoryCache.Default;
string fileContents = cache["filecontents"] as string;
if (fileContents == null)
{
CacheItemPolicy policy = new CacheItemPolicy();
policy.AbsoluteExpiration =
DateTimeOffset.Now.AddSeconds(10.0);
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.
fileContents = File.ReadAllText(cachedFilePath) + "\n"
+ DateTime.Now.ToString();
cache.Set("filecontents", fileContents, policy);
}
Label1.Text = fileContents;
}
}
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 String = TryCast(cache("filecontents"), _
String)
If fileContents Is Nothing Then
Dim policy As New CacheItemPolicy()
policy.AbsoluteExpiration = _
DateTimeOffset.Now.AddSeconds(10.0)
Dim filePaths As New List(Of String)()
Dim cachedFilePath As String = Server.MapPath("~") & _
"\cacheText.txt"
filePaths.Add(cachedFilePath)
policy.ChangeMonitors.Add(New _
HostFileChangeMonitor(filePaths))
' Fetch the file contents.
fileContents = File.ReadAllText(cachedFilePath) & _
vbCrLf & DateTime.Now.ToString()
cache.Set("filecontents", fileContents, policy)
End If
Label1.Text = fileContents
End Sub
End Class
Uwagi
Klasa FileChangeMonitor jest typem podstawowym ChangeMonitor klas monitorujących zmiany w plikach. Aby utworzyć monitor zmian w systemie plików, można dziedziczyć z tej klasy.
Uwagi dotyczące implementowania
Aby uzyskać informacje na temat kontraktu dziedziczenia, który musi być obserwowany, zobacz sekcję Uwagi dla dziedziczy w przeglądzie ChangeMonitor klasy.
Konstruktory
FileChangeMonitor() |
Inicjuje nowe wystąpienie klasy FileChangeMonitor. Ten konstruktor jest wywoływany z konstruktorów w klasach pochodnych w celu zainicjowania klasy bazowej. |
Właściwości
FilePaths |
Pobiera kolekcję zawierającą ścieżki plików monitorowanych pod kątem zmian. |
HasChanged |
Pobiera wartość wskazującą, że stan monitorowany przez klasę ChangeMonitor uległ zmianie. (Odziedziczone po ChangeMonitor) |
IsDisposed |
Pobiera wartość wskazującą, że wystąpienie pochodne ChangeMonitor klasy jest usuwane. (Odziedziczone po ChangeMonitor) |
LastModified |
Pobiera wartość wskazującą czas ostatniej zmiany monitorowanego pliku. |
UniqueId |
Pobiera wartość reprezentującą ChangeMonitor wystąpienie klasy. (Odziedziczone po ChangeMonitor) |
Metody
Dispose() |
Zwalnia wszystkie zasoby, które są używane przez bieżące wystąpienie ChangeMonitor klasy. (Odziedziczone po ChangeMonitor) |
Dispose(Boolean) |
Zwalnia wszystkie zarządzane i niezarządzane zasoby oraz wszystkie odwołania do ChangeMonitor wystąpienia. To przeciążenie musi zostać zaimplementowane przez pochodne klasy monitora zmian. (Odziedziczone po ChangeMonitor) |
Equals(Object) |
Określa, czy dany obiekt jest taki sam, jak bieżący obiekt. (Odziedziczone po Object) |
GetHashCode() |
Służy jako domyślna funkcja skrótu. (Odziedziczone po Object) |
GetType() |
Type Pobiera bieżące wystąpienie. (Odziedziczone po Object) |
InitializationComplete() |
Wywoływane z konstruktora klas pochodnych, aby wskazać, że inicjowanie zostało zakończone. (Odziedziczone po ChangeMonitor) |
MemberwiseClone() |
Tworzy płytkią kopię bieżącego Objectelementu . (Odziedziczone po Object) |
NotifyOnChanged(OnChangedCallback) |
Wywoływane przez implementatory pamięci podręcznej do rejestrowania wywołania zwrotnego i powiadamiania ObjectCache wystąpienia za pośrednictwem delegata OnChangedCallback , gdy zależność uległa zmianie. (Odziedziczone po ChangeMonitor) |
OnChanged(Object) |
Wywoływane przez klasy pochodne w celu podniesienia zdarzenia w przypadku zmiany zależności. (Odziedziczone po ChangeMonitor) |
ToString() |
Zwraca ciąg reprezentujący bieżący obiekt. (Odziedziczone po Object) |