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

Gilt für: