Partager via


FileChangeMonitor Classe

Définition

Représente un objet qui surveille les modifications apportées aux fichiers.

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
Héritage
FileChangeMonitor
Dérivé

Exemples

L’exemple suivant montre comment créer un élément de cache qui utilise un HostFileChangeMonitor objet pour surveiller l’état des données sources (un fichier) sur le système de fichiers. La classe HostFileChangeMonitor hérite de la classe FileChangeMonitor. L’entrée de cache est définie à l’aide d’un CacheItemPolicy objet qui fournit des détails d’éviction et d’expiration pour l’entrée du 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

Remarques

La FileChangeMonitor classe est un type de base ChangeMonitor pour les classes qui surveillent les modifications apportées aux fichiers. Pour créer un moniteur pour les modifications apportées au système de fichiers, vous pouvez hériter de cette classe.

Notes pour les responsables de l’implémentation

Pour plus d’informations sur le contrat d’héritage qui doit être suivi, consultez la section Notes for Inheritors dans la vue d’ensemble de la ChangeMonitor classe.

Constructeurs

FileChangeMonitor()

Initialise une nouvelle instance de la classe FileChangeMonitor. Ce constructeur est appelé par les constructeurs de classes dérivées afin d'initialiser la classe de base.

Propriétés

FilePaths

Obtient une collection qui contient les chemins d'accès de fichiers dont les modifications sont surveillées.

HasChanged

Obtient une valeur qui indique que l'état surveillé par la classe ChangeMonitor a changé.

(Hérité de ChangeMonitor)
IsDisposed

Obtient une valeur qui indique que l'instance dérivée d'une classe ChangeMonitor est supprimée.

(Hérité de ChangeMonitor)
LastModified

Obtient une valeur qui indique la dernière heure à laquelle un fichier surveillé a été modifié.

UniqueId

Obtient une valeur qui représente l'instance de la classe ChangeMonitor.

(Hérité de ChangeMonitor)

Méthodes

Dispose()

Libère toutes les ressources qui sont utilisées par l'instance actuelle de la classe ChangeMonitor.

(Hérité de ChangeMonitor)
Dispose(Boolean)

Libère toutes les ressources managées et non managées, ainsi que les références à l'instance ChangeMonitor. Cette surcharge doit être implémentée par des classes de surveillance des modifications dérivées.

(Hérité de ChangeMonitor)
Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
InitializationComplete()

Appelé par le constructeur des classes dérivées pour indiquer que l'initialisation est terminée.

(Hérité de ChangeMonitor)
MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
NotifyOnChanged(OnChangedCallback)

Appelée par les implémenteurs de cache pour inscrire un rappel et notifier une instance de ObjectCache via le délégué OnChangedCallback lorsqu'une dépendance a été modifiée.

(Hérité de ChangeMonitor)
OnChanged(Object)

Appelé par les classes dérivées pour déclencher l'événement lorsqu'une dépendance a été modifiée.

(Hérité de ChangeMonitor)
ToString()

Retourne une chaîne qui représente l'objet actuel.

(Hérité de Object)

S’applique à