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 참조하세요.
생성자
| Name | Description |
|---|---|
| FileChangeMonitor() |
FileChangeMonitor 클래스의 새 인스턴스를 초기화합니다. 이 생성자는 기본 클래스를 초기화하기 위해 파생 클래스의 생성자에서 호출됩니다. |
속성
| Name | Description |
|---|---|
| FilePaths |
변경 내용을 모니터링하는 파일의 경로를 포함하는 컬렉션을 가져옵니다. |
| HasChanged |
클래스에서 모니터링하는 상태가 변경되었음을 ChangeMonitor 나타내는 값을 가져옵니다. (다음에서 상속됨 ChangeMonitor) |
| IsDisposed |
클래스의 ChangeMonitor 파생 인스턴스가 삭제되었음을 나타내는 값을 가져옵니다. (다음에서 상속됨 ChangeMonitor) |
| LastModified |
모니터링 중인 파일이 마지막으로 변경된 시간을 나타내는 값을 가져옵니다. |
| UniqueId |
클래스 인스턴스를 ChangeMonitor 나타내는 값을 가져옵니다. (다음에서 상속됨 ChangeMonitor) |
메서드
| Name | Description |
|---|---|
| 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) |