FileChangeMonitor Clase

Definición

Representa un objeto que supervisa los cambios en los archivos.

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
Herencia
FileChangeMonitor
Derivado

Ejemplos

En el ejemplo siguiente se muestra cómo crear un elemento de caché que usa un HostFileChangeMonitor objeto para supervisar el estado de los datos de origen (un archivo) en el sistema de archivos. La clase HostFileChangeMonitor hereda de la clase FileChangeMonitor. La entrada de caché se define mediante un CacheItemPolicy objeto que proporciona detalles de expulsión y expiración para la entrada de caché.

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

Comentarios

La FileChangeMonitor clase es un tipo base ChangeMonitor para las clases que supervisan los cambios en los archivos. Para crear un monitor para ver los cambios en el sistema de archivos, puede heredar de esta clase.

Notas a los implementadores

Para obtener información sobre el contrato de herencia que debe seguirse, consulte la sección Notes for Inheritors (Notas para heredar) en la información general de la ChangeMonitor clase.

Constructores

Nombre Description
FileChangeMonitor()

Inicializa una nueva instancia de la clase FileChangeMonitor. Este constructor se llama desde constructores de clases derivadas para inicializar la clase base.

Propiedades

Nombre Description
FilePaths

Obtiene una colección que contiene las rutas de acceso de los archivos que se supervisan para ver los cambios.

HasChanged

Obtiene un valor que indica que el estado supervisado por la ChangeMonitor clase ha cambiado.

(Heredado de ChangeMonitor)
IsDisposed

Obtiene un valor que indica que se elimina la instancia derivada de una ChangeMonitor clase.

(Heredado de ChangeMonitor)
LastModified

Obtiene un valor que indica la última vez que se cambió un archivo que se está supervisando.

UniqueId

Obtiene un valor que representa la instancia de ChangeMonitor clase.

(Heredado de ChangeMonitor)

Métodos

Nombre Description
Dispose()

Libera todos los recursos que usa la instancia actual de la ChangeMonitor clase .

(Heredado de ChangeMonitor)
Dispose(Boolean)

Libera todos los recursos administrados y no administrados y las referencias a la ChangeMonitor instancia. Esta sobrecarga debe implementarse mediante clases derivadas de change-monitor.

(Heredado de ChangeMonitor)
Equals(Object)

Determina si el objeto especificado es igual al objeto actual.

(Heredado de Object)
GetHashCode()

Actúa como función hash predeterminada.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
InitializationComplete()

Se llama desde el constructor de clases derivadas para indicar que finaliza la inicialización.

(Heredado de ChangeMonitor)
MemberwiseClone()

Crea una copia superficial del Objectactual.

(Heredado de Object)
NotifyOnChanged(OnChangedCallback)

Llamado por los implementadores de caché para registrar una devolución de llamada y notificar a una ObjectCache instancia a través del OnChangedCallback delegado cuando ha cambiado una dependencia.

(Heredado de ChangeMonitor)
OnChanged(Object)

Llamado por clases derivadas para generar el evento cuando cambia una dependencia.

(Heredado de ChangeMonitor)
ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Se aplica a