Udostępnij za pośrednictwem


FileChangeMonitor Klasa

Definicja

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

Dotyczy