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 Status 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 Erber" in der ChangeMonitor Klassenübersicht.
Konstruktoren
| Name | Beschreibung |
|---|---|
| FileChangeMonitor() |
Initialisiert eine neue Instanz der FileChangeMonitor-Klasse. Dieser Konstruktor wird von Konstruktoren in abgeleiteten Klassen aufgerufen, um die Basisklasse zu initialisieren. |
Eigenschaften
| Name | Beschreibung |
|---|---|
| FilePaths |
Ruft eine Auflistung ab, die die Pfade von Dateien enthält, die auf Änderungen überwacht werden. |
| HasChanged |
Ruft einen Wert ab, der angibt, dass sich der Zustand geändert hat, der von der ChangeMonitor Klasse überwacht wird. (Geerbt von ChangeMonitor) |
| IsDisposed |
Ruft einen Wert ab, der angibt, dass die abgeleitete Instanz einer ChangeMonitor Klasse verworfen wird. (Geerbt von ChangeMonitor) |
| LastModified |
Ruft einen Wert ab, der angibt, wie lange eine datei, die überwacht wird, zuletzt geändert wurde. |
| UniqueId |
Ruft einen Wert ab, der die ChangeMonitor Klasseninstanz darstellt. (Geerbt von ChangeMonitor) |
Methoden
| Name | Beschreibung |
|---|---|
| Dispose() |
Gibt alle Ressourcen frei, die von der aktuellen Instanz der ChangeMonitor Klasse verwendet werden. (Geerbt von ChangeMonitor) |
| Dispose(Boolean) |
Veröffentlicht alle verwalteten und nicht verwalteten Ressourcen und alle Verweise auf die ChangeMonitor Instanz. Diese Überladung muss durch abgeleitete Änderungsüberwachungsklassen implementiert werden. (Geerbt von ChangeMonitor) |
| Equals(Object) |
Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht. (Geerbt von Object) |
| GetHashCode() |
Dient als Standardhashfunktion. (Geerbt von Object) |
| GetType() |
Ruft die Type der aktuellen Instanz ab. (Geerbt von Object) |
| InitializationComplete() |
Vom Konstruktor abgeleiteter Klassen aufgerufen, um anzugeben, dass die Initialisierung abgeschlossen ist. (Geerbt von ChangeMonitor) |
| MemberwiseClone() |
Erstellt eine flache Kopie der aktuellen Object. (Geerbt von Object) |
| NotifyOnChanged(OnChangedCallback) |
Wird von Cacheimplementierern aufgerufen, um einen Rückruf zu registrieren und eine ObjectCache Instanz über die OnChangedCallback Stellvertretung zu benachrichtigen, wenn sich eine Abhängigkeit geändert hat. (Geerbt von ChangeMonitor) |
| OnChanged(Object) |
Wird von abgeleiteten Klassen aufgerufen, um das Ereignis auszuheben, wenn sich eine Abhängigkeit ändert. (Geerbt von ChangeMonitor) |
| ToString() |
Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Geerbt von Object) |