FileChangeMonitor Classe

Definizione

Rappresenta un oggetto che monitora le modifiche apportate ai file.

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
Ereditarietà
FileChangeMonitor
Derivato

Esempio

Nell'esempio seguente viene illustrato come creare un elemento della cache che usa un HostFileChangeMonitor oggetto per monitorare lo stato dei dati di origine (un file) nel file system. La classe HostFileChangeMonitor eredita dalla classe FileChangeMonitor. La voce della cache viene definita usando un CacheItemPolicy oggetto che fornisce i dettagli di rimozione e scadenza per la voce della cache.

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

Commenti

La FileChangeMonitor classe è un tipo di base ChangeMonitor per le classi che monitorano le modifiche ai file. Per creare un monitoraggio per le modifiche nel file system, è possibile ereditare da questa classe.

Note per gli implementatori

Per informazioni sul contratto di ereditarietà da seguire, vedere la sezione Notes for Inheritors nella panoramica della ChangeMonitor classe.

Costruttori

Nome Descrizione
FileChangeMonitor()

Inizializza una nuova istanza della classe FileChangeMonitor. Questo costruttore viene chiamato dai costruttori nelle classi derivate per inizializzare la classe base.

Proprietà

Nome Descrizione
FilePaths

Ottiene una raccolta contenente i percorsi dei file monitorati per le modifiche.

HasChanged

Ottiene un valore che indica che lo stato monitorato dalla ChangeMonitor classe è stato modificato.

(Ereditato da ChangeMonitor)
IsDisposed

Ottiene un valore che indica che l'istanza derivata di una ChangeMonitor classe viene eliminata.

(Ereditato da ChangeMonitor)
LastModified

Ottiene un valore che indica l'ultima volta che è stato modificato un file monitorato.

UniqueId

Ottiene un valore che rappresenta l'istanza della ChangeMonitor classe.

(Ereditato da ChangeMonitor)

Metodi

Nome Descrizione
Dispose()

Rilascia tutte le risorse utilizzate dall'istanza corrente della ChangeMonitor classe .

(Ereditato da ChangeMonitor)
Dispose(Boolean)

Rilascia tutte le risorse gestite e non gestite e tutti i riferimenti all'istanza ChangeMonitor . Questo overload deve essere implementato dalle classi di monitoraggio delle modifiche derivate.

(Ereditato da ChangeMonitor)
Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetType()

Ottiene il Type dell'istanza corrente.

(Ereditato da Object)
InitializationComplete()

Chiamato dal costruttore delle classi derivate per indicare che l'inizializzazione è stata completata.

(Ereditato da ChangeMonitor)
MemberwiseClone()

Crea una copia superficiale del Objectcorrente.

(Ereditato da Object)
NotifyOnChanged(OnChangedCallback)

Chiamato dagli implementatori della cache per registrare un callback e notificare a un'istanza ObjectCache tramite il OnChangedCallback delegato quando una dipendenza è cambiata.

(Ereditato da ChangeMonitor)
OnChanged(Object)

Chiamato dalle classi derivate per generare l'evento quando viene modificata una dipendenza.

(Ereditato da ChangeMonitor)
ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)

Si applica a