FileChangeMonitor クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
ファイルへの変更を監視するオブジェクトを表します。
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
- 継承
- 派生
例
次の例は、 オブジェクトを使用 HostFileChangeMonitor してファイル システム上のソース データ (ファイル) の状態を監視するキャッシュ 項目を作成する方法を示しています。 HostFileChangeMonitor クラスは FileChangeMonitor クラスから継承されます。 キャッシュ エントリは、キャッシュ エントリの CacheItemPolicy 削除と有効期限の詳細を提供する オブジェクトを使用して定義されます。
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
注釈
クラスは FileChangeMonitor 、ファイルへの変更を監視するクラスの基本 ChangeMonitor 型です。 ファイル システムで変更のモニターを作成するには、このクラスから継承できます。
注意 (実装者)
従う必要がある継承コントラクトの詳細については、クラスの概要の「継承者に関するメモ」セクションを ChangeMonitor 参照してください。
コンストラクター
FileChangeMonitor() |
FileChangeMonitor クラスの新しいインスタンスを初期化します。 このコンストラクターは、基本クラスを初期化するために、派生クラスのコンストラクターから呼び出されます。 |
プロパティ
FilePaths |
変更を監視されるファイルのパスを格納しているコレクションを取得します。 |
HasChanged |
ChangeMonitor クラスによって監視されている状態が変更されたことを示す値を取得します。 (継承元 ChangeMonitor) |
IsDisposed |
ChangeMonitor クラスの派生インスタンスが破棄されたことを示す値を取得します。 (継承元 ChangeMonitor) |
LastModified |
監視されているファイルが最後に変更された時刻を示す値を取得します。 |
UniqueId |
ChangeMonitor クラスのインスタンスを表す値を取得します。 (継承元 ChangeMonitor) |
メソッド
Dispose() |
ChangeMonitor クラスの現在のインスタンスによって使用されているすべてのリソースを解放します。 (継承元 ChangeMonitor) |
Dispose(Boolean) |
すべてのマネージド リソースおよびアンマネージド リソースと、ChangeMonitor インスタンスへのすべての参照を解放します。 このオーバーロードは、変更監視クラスの派生クラスで実装する必要があります。 (継承元 ChangeMonitor) |
Equals(Object) |
指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。 (継承元 Object) |
GetHashCode() |
既定のハッシュ関数として機能します。 (継承元 Object) |
GetType() |
現在のインスタンスの Type を取得します。 (継承元 Object) |
InitializationComplete() |
派生クラスのコンストラクターから呼び出され、初期化が完了したことを示します。 (継承元 ChangeMonitor) |
MemberwiseClone() |
現在の Object の簡易コピーを作成します。 (継承元 Object) |
NotifyOnChanged(OnChangedCallback) |
コールバックを登録し、依存関係が変化したときに ObjectCache デリゲートを通して OnChangedCallback インスタンスに通知するために、キャッシュの実装側によって呼び出されます。 (継承元 ChangeMonitor) |
OnChanged(Object) |
依存関係が変更されたときに、イベントを発生させるために派生クラスによって呼び出されます。 (継承元 ChangeMonitor) |
ToString() |
現在のオブジェクトを表す文字列を返します。 (継承元 Object) |
適用対象
.NET