FileChangeMonitor Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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
- 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) |