FileChangeMonitor Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Stellt ein Objekt dar, das Änderungen an Dateien überwacht.
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
- Vererbung
- Abgeleitet
Beispiele
Das folgende Beispiel zeigt, wie Sie ein Cacheelement erstellen, das ein HostFileChangeMonitor -Objekt verwendet, um den Zustand der Quelldaten (eine Datei) im Dateisystem zu überwachen. Die HostFileChangeMonitor-Klasse erbt von der FileChangeMonitor-Klasse. Der Cacheeintrag wird mithilfe eines CacheItemPolicy -Objekts definiert, das Entfernungs- und Ablaufdetails für den Cacheeintrag bereitstellt.
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
Hinweise
Die FileChangeMonitor -Klasse ist ein Basistyp ChangeMonitor für Klassen, die Änderungen an Dateien überwachen. Um einen Monitor für Änderungen im Dateisystem zu erstellen, können Sie von dieser Klasse erben.
Hinweise für Ausführende
Informationen zum Vererbungsvertrag, der befolgt werden muss, finden Sie im Abschnitt Hinweise für Erben in der ChangeMonitor Klassenübersicht.
Konstruktoren
FileChangeMonitor() |
Initialisiert eine neue Instanz der FileChangeMonitor-Klasse. Dieser Konstruktor wird von Konstruktoren in abgeleiteten Klassen aufgerufen, um die Basisklasse zu initialisieren. |
Eigenschaften
FilePaths |
Ruft eine Auflistung ab, die die auf Änderungen überwachten Dateipfade enthält. |
HasChanged |
Ruft einen Wert ab, der angibt, dass der von der ChangeMonitor-Klasse überwachte Zustand geändert wurde. (Geerbt von ChangeMonitor) |
IsDisposed |
Ruft einen Wert ab, der angibt, dass die abgeleitete Instanz einer ChangeMonitor-Klasse freigegeben wird. (Geerbt von ChangeMonitor) |
LastModified |
Ruft einen Wert ab, der angibt, wann eine überwachte Datei zum letzten Mal geändert wurde. |
UniqueId |
Ruft einen Wert ab, der die ChangeMonitor-Klasseninstanz darstellt. (Geerbt von ChangeMonitor) |
Methoden
Dispose() |
Gibt alle von der aktuellen Instanz der ChangeMonitor-Klasse verwendeten Ressourcen frei. (Geerbt von ChangeMonitor) |
Dispose(Boolean) |
Gibt alle verwalteten und nicht verwalteten Ressourcen und alle Verweise auf die ChangeMonitor-Instanz frei. Diese Überladung muss von abgeleiteten Änderungsüberwachungsklassen implementiert werden. (Geerbt von ChangeMonitor) |
Equals(Object) |
Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist. (Geerbt von Object) |
GetHashCode() |
Fungiert als Standardhashfunktion. (Geerbt von Object) |
GetType() |
Ruft den Type der aktuellen Instanz ab. (Geerbt von Object) |
InitializationComplete() |
Wird vom Konstruktor abgeleiteter Klassen aufgerufen, um anzugeben, dass die Initialisierung abgeschlossen ist. (Geerbt von ChangeMonitor) |
MemberwiseClone() |
Erstellt eine flache Kopie des aktuellen Object. (Geerbt von Object) |
NotifyOnChanged(OnChangedCallback) |
Wird von Cacheimplementierungen aufgerufen, um einen Rückruf zu registrieren und über den ObjectCache-Delegaten eine OnChangedCallback-Instanz zu benachrichtigen, wenn sich eine Abhängigkeit geändert hat. (Geerbt von ChangeMonitor) |
OnChanged(Object) |
Wird von abgeleiteten Klassen aufgerufen, um das Ereignis auszulösen, wenn sich eine Abhängigkeit ändert. (Geerbt von ChangeMonitor) |
ToString() |
Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Geerbt von Object) |