FileChangeMonitor Klasse

Definition

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
FileChangeMonitor
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)

Gilt für: