FileChangeMonitor Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Představuje objekt, který monitoruje změny souborů.
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
- Dědičnost
- Odvozené
Příklady
Následující příklad ukazuje, jak vytvořit položku mezipaměti, která používá HostFileChangeMonitor objekt ke sledování stavu zdrojových dat (souboru) v systému souborů. Třída HostFileChangeMonitor dědí z FileChangeMonitor třídy. Položka mezipaměti je definována pomocí objektu CacheItemPolicy , který poskytuje podrobnosti o vyřazení a vypršení platnosti položky mezipaměti.
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
Poznámky
Třída FileChangeMonitor je základní ChangeMonitor typ pro třídy, které monitorují změny souborů. Pokud chcete vytvořit monitorování změn v systému souborů, můžete dědit z této třídy.
Poznámky pro implementátory
Informace o smlouvě dědičnosti, kterou je třeba dodržovat, najdete v části Poznámky pro dědíky v přehledu ChangeMonitor třídy.
Konstruktory
FileChangeMonitor() |
Inicializuje novou instanci FileChangeMonitor třídy. Tento konstruktor je volán z konstruktorů v odvozených třídách za účelem inicializace základní třídy. |
Vlastnosti
FilePaths |
Získá kolekci, která obsahuje cesty k souborům, které jsou monitorovány pro změny. |
HasChanged |
Získá hodnotu, která označuje, že stav, který je monitorován ChangeMonitor třídou změněna. (Zděděno od ChangeMonitor) |
IsDisposed |
Získá hodnotu, která označuje, že odvozená ChangeMonitor instance třídy je uvolněna. (Zděděno od ChangeMonitor) |
LastModified |
Získá hodnotu, která označuje poslední změnu souboru, který je sledován. |
UniqueId |
Získá hodnotu, která představuje ChangeMonitor instanci třídy. (Zděděno od ChangeMonitor) |
Metody
Dispose() |
Uvolní všechny prostředky, které jsou používány aktuální instancí ChangeMonitor třídy. (Zděděno od ChangeMonitor) |
Dispose(Boolean) |
Uvolní všechny spravované a nespravované prostředky a všechny odkazy na ChangeMonitor instanci. Toto přetížení musí být implementováno odvozenými třídami monitorování změn. (Zděděno od ChangeMonitor) |
Equals(Object) |
Určí, zda se zadaný objekt rovná aktuálnímu objektu. (Zděděno od Object) |
GetHashCode() |
Slouží jako výchozí hashovací funkce. (Zděděno od Object) |
GetType() |
Získá aktuální Type instanci. (Zděděno od Object) |
InitializationComplete() |
Volána z konstruktoru odvozených tříd pro označení, že inicializace je dokončena. (Zděděno od ChangeMonitor) |
MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Objectsouboru . (Zděděno od Object) |
NotifyOnChanged(OnChangedCallback) |
Volání implementátory mezipaměti zaregistrovat zpětné volání a upozornit ObjectCache instanci prostřednictvím delegáta OnChangedCallback na změnu závislosti. (Zděděno od ChangeMonitor) |
OnChanged(Object) |
Volána odvozenými třídami k vyvolání události při změně závislosti. (Zděděno od ChangeMonitor) |
ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |