CacheDependency 생성자

정의

CacheDependency 클래스의 새 인스턴스를 초기화합니다.

오버로드

CacheDependency()

CacheDependency 클래스의 새 인스턴스를 초기화합니다.

CacheDependency(String)

파일 또는 디렉터리의 변경 내용을 모니터링하는 CacheDependency 클래스의 새 인스턴스를 초기화합니다.

CacheDependency(String[])

파일 또는 디렉터리에 대한 경로 배열의 변경 내용을 모니터링하는 CacheDependency 클래스의 새 인스턴스를 초기화합니다.

CacheDependency(String, DateTime)

파일 또는 디렉터리의 변경 내용을 모니터링하는 CacheDependency 클래스의 새 인스턴스를 초기화합니다.

CacheDependency(String[], DateTime)

파일 또는 디렉터리에 대한 경로 배열 변경을 모니터링하고 변경 모니터링이 시작되는 시간을 지정하는 CacheDependency 클래스의 새 인스턴스를 초기화합니다.

CacheDependency(String[], String[])

파일 또는 디렉터리에 대한 경로 배열이나, 캐시 키 배열 또는 이 두 가지 배열 모두의 변경 내용을 모니터링하는 CacheDependency 클래스의 새 인스턴스를 초기화합니다.

CacheDependency(String[], String[], DateTime)

파일 또는 디렉터리에 대한 경로 배열이나, 캐시 키 배열 또는 이 두 가지 배열 모두의 변경 내용을 모니터링하는 CacheDependency 클래스의 새 인스턴스를 초기화합니다.

CacheDependency(String[], String[], CacheDependency)

파일 또는 디렉터리에 대한 경로 배열이나, 캐시 키 배열 또는 이 두 가지 배열 모두의 변경 내용을 모니터링하는 CacheDependency 클래스의 새 인스턴스를 초기화합니다. 또한 CacheDependency 클래스의 다른 인스턴스에 대해 종속되도록 합니다.

CacheDependency(String[], String[], CacheDependency, DateTime)

파일 또는 디렉터리에 대한 경로 배열이나, 캐시 키 배열 또는 이 두 가지 배열 모두의 변경 내용을 모니터링하는 CacheDependency 클래스의 새 인스턴스를 초기화합니다. 또한 CacheDependency 클래스의 인스턴스와 변경 모니터링이 시작되는 시간에 종속되도록 합니다.

CacheDependency()

CacheDependency 클래스의 새 인스턴스를 초기화합니다.

protected:
 CacheDependency();
protected CacheDependency ();
Protected Sub New ()

예제

다음 코드 예제는 에서 파생 CacheDependency 되는 모든 클래스가 필요하기 때문에 이 버전의 CacheDependency 생성자를 구현하는 클래스입니다.

' Declare the class.
Public Class CustomCacheDependency 
   Inherits CacheDependency

     ' Constructor with no arguments 
     ' provided by CacheDependency class.
     Public Sub New()
     End Sub
   
     ' Declare a Boolean field named disposedValue.
     ' This will be used by Disposed property.
     Private disposedValue As Boolean                
     
     ' Create accessors for the Disposed property.
     Public Property Disposed As Boolean
       Get
           Return disposedValue
       End Get
       Set (ByVal value As Boolean)
           disposedValue = value
       End Set
     End Property
     
     ' Create a public method that sets the latest
     ' changed time of the CustomCacheDependency
     ' and notifies the underlying CacheDependency that the 
     ' dependency has changed, even though the HasChanged
     ' property is false.
     Public Sub ResetDependency()
        If Me.HasChanged = False              
           SetUtcLastModified(DateTime.MinValue)
           NotifyDependencyChanged(Me, EventArgs.Empty)
        End If
     End Sub
     
     ' Overrides the DependencyDispose method to set the
     ' Disposed proerty to true. This method automatically
     ' notifies the underlying CacheDependency object to 
     ' release any resources associated with this class. 
     Protected Overrides Sub DependencyDispose()
        Disposed = True
     End Sub
     
     
 End Class

설명

에서 CacheDependency고유한 클래스를 파생하려는 경우 이 버전의 CacheDependency 생성자를 구현합니다.

추가 정보

적용 대상

CacheDependency(String)

파일 또는 디렉터리의 변경 내용을 모니터링하는 CacheDependency 클래스의 새 인스턴스를 초기화합니다.

public:
 CacheDependency(System::String ^ filename);
public CacheDependency (string filename);
new System.Web.Caching.CacheDependency : string -> System.Web.Caching.CacheDependency
Public Sub New (filename As String)

매개 변수

filename
String

캐시된 개체가 종속된 파일 또는 디렉터리에 대한 경로입니다. 이 리소스가 변경되면 캐시된 해당 개체는 사용할 수 없게 되며 캐시에서 제거됩니다.

예제

다음 코드 예제에서는 XML 파일에 종속된 클래스의 CacheDependency 인스턴스를 만듭니다. 그런 다음 메서드는 Cache.Insert 해당 파일에 종속된 에 항목을 Cache 추가합니다.

CacheDependency dep = new CacheDependency(Server.MapPath("isbn.xml"));
Cache.Insert("ISBNData", Source, dep);

Dim dep As New CacheDependency(Server.MapPath("isbn.xml"))
    Cache.Insert("ISBNData", Source, dep)

다음 기술을 사용하여 파일에 대한 종속성을 사용하여 에 항목을 Cache 추가할 수도 있습니다.

// Make key1 dependent on a file.
CacheDependency dependency = new CacheDependency(Server.MapPath("isbn.xml"));

Cache.Insert("key1", "Value 1", dependency);
    ' Make key1 dependent on a file.
    Dim dependency as new CacheDependency(Server.MapPath("isbn.xml"))

    Cache.Insert("key1", "Value 1", dependency)
End If

설명

매개 변수에 지정된 filename 디렉터리 또는 파일이 파일 시스템에 없으면 누락된 것으로 처리됩니다. 종속성이 있는 개체가 에 추가 Cache될 때 디렉터리 또는 파일이 누락된 경우 디렉터리 또는 파일을 만들 때 캐시된 개체가 에서 Cache 제거됩니다.

예를 들어 c:\stocks\xyz.dat 파일 경로에 종속성이 있는 개체 Cache 를 에 추가한다고 가정합니다. 개체를 만들 때 CacheDependency 해당 파일을 찾을 수 없지만 나중에 만들어지면 xyz.dat 파일을 만들 때 캐시된 개체가 제거됩니다.

추가 정보

적용 대상

CacheDependency(String[])

파일 또는 디렉터리에 대한 경로 배열의 변경 내용을 모니터링하는 CacheDependency 클래스의 새 인스턴스를 초기화합니다.

public:
 CacheDependency(cli::array <System::String ^> ^ filenames);
public CacheDependency (string[] filenames);
new System.Web.Caching.CacheDependency : string[] -> System.Web.Caching.CacheDependency
Public Sub New (filenames As String())

매개 변수

filenames
String[]

캐시된 개체가 종속되어 있는 파일 또는 디렉터리 경로로 이루어진 배열입니다. 이러한 리소스가 변경되면 캐시된 해당 개체는 사용할 수 없게 되며 캐시에서 제거됩니다.

예제

다음 코드 예제를 사용 하는 방법을 보여 줍니다는 파일의 배열에 종속성을 사용 하 여 Cache.Insert 에 항목을 추가 하는 Cache 방법입니다. 항목을 디렉터리 배열에 종속되도록 설정할 수도 있습니다.

    // Make key1 dependent on several files.
    String[] files = new String[2];
    files[0] = Server.MapPath("isbn.xml");
    files[1] = Server.MapPath("customer.xml");
    CacheDependency dependency = new CacheDependency(files);

    Cache.Insert("key1", "Value 1", dependency);
}
    ' Make key1 dependent on several files.
    Dim files(2) as String
    files(0) = Server.MapPath("isbn.xml")
    files(1) = Server.MapPath("customer.xml")
    Dim dependency as new CacheDependency(files)

    Cache.Insert("key1", "Value 1", dependency)
End If

설명

파일 또는 디렉터리 배열의 변경 되거나 제거 된 배열에서 캐시 된 항목 없게 고 애플리케이션에서 제거 됩니다 Cache 개체입니다.

또한 매개 변수에 지정된 filenames 디렉터리 또는 파일이 파일 시스템에 없는 경우 누락된 것으로 처리됩니다. 종속성이 있는 개체가 에 추가 Cache될 때 디렉터리 또는 파일이 누락된 경우 해당 디렉터리 또는 파일을 만들 때 캐시된 개체가 에서 Cache 제거됩니다.

예를 들어 c:\stocks\xyz.dat 파일 경로에 종속성이 있는 개체 Cache 를 에 추가한다고 가정합니다. 개체를 만들 때 CacheDependency 해당 파일을 찾을 수 없지만 나중에 만들어지면 xyz.dat 파일을 만들 때 캐시된 개체가 제거됩니다.

참고

파일 종속성이 포함된 배열을 만들 때 추가하려는 항목이 종속된 Cache 파일 수를 정의해야 합니다.

추가 정보

적용 대상

CacheDependency(String, DateTime)

파일 또는 디렉터리의 변경 내용을 모니터링하는 CacheDependency 클래스의 새 인스턴스를 초기화합니다.

public:
 CacheDependency(System::String ^ filename, DateTime start);
public CacheDependency (string filename, DateTime start);
new System.Web.Caching.CacheDependency : string * DateTime -> System.Web.Caching.CacheDependency
Public Sub New (filename As String, start As DateTime)

매개 변수

filename
String

캐시된 개체가 종속된 파일 또는 디렉터리에 대한 경로입니다. 이 리소스가 변경되면 캐시된 해당 개체는 사용할 수 없게 되며 캐시에서 제거됩니다.

start
DateTime

디렉터리나 파일을 마지막으로 수정한 날짜를 확인할 시간입니다.

예제

다음 코드 예제에서는이 생성자를 사용 하 여 개체를 인스턴스화 하 CacheDependency 고 해당 종속성을 사용 하 여 에 항목을 Cache 삽입 합니다. dt 매개 변수에 start 전달된 값은 로 설정DateTime.Now됩니다.

// Insert the cache item.
CacheDependency dep = new CacheDependency(fileName, dt);
cache.Insert("key", "value", dep);

// Check whether CacheDependency.HasChanged is true.
if (dep.HasChanged)
  Response.Write("<p>The dependency has changed.");  
else Response.Write("<p>The dependency has not changed.");
' Insert the cache item.
Dim dep As New CacheDependency(fileName, dt)
myCache.Insert("key", "value", dep)

' Check whether CacheDependency.HasChanged is true.
If dep.HasChanged Then
   Response.Write("<p>The dependency has changed.")
Else
   Response.Write("<p>The dependency has not changed.")
End If 

설명

매개 변수에 지정된 filename 디렉터리 또는 파일이 파일 시스템에 없으면 누락된 것으로 처리됩니다. 종속성이 있는 개체가 에 추가 Cache될 때 디렉터리 또는 파일이 누락된 경우 디렉터리 또는 파일을 만들 때 캐시된 개체가 에서 Cache 제거됩니다.

예를 들어 c:\stocks\xyz.dat 파일 경로에 종속성이 있는 개체 Cache 를 에 추가한다고 가정합니다. 개체를 만들 때 CacheDependency 해당 파일을 찾을 수 없지만 나중에 만들어지면 xyz.dat 파일을 만들 때 캐시된 개체가 제거됩니다.

참고

변경 내용 추적은 즉시 시작되며 매개 변수를 기반으로 start 하지 않습니다. 매개 변수를 start 사용하여 매개 변수에 전달된 filename 디렉터리 또는 파일의 마지막 수정 날짜를 확인하려는 과거의 날짜와 시간을 전달합니다. 마지막으로 수정한 날짜가 매개 변수에 start 전달된 날짜 및 시간 집합보다 오래된 경우 캐시된 항목은 에서 Cache제거됩니다.

추가 정보

적용 대상

CacheDependency(String[], DateTime)

파일 또는 디렉터리에 대한 경로 배열 변경을 모니터링하고 변경 모니터링이 시작되는 시간을 지정하는 CacheDependency 클래스의 새 인스턴스를 초기화합니다.

public:
 CacheDependency(cli::array <System::String ^> ^ filenames, DateTime start);
public CacheDependency (string[] filenames, DateTime start);
new System.Web.Caching.CacheDependency : string[] * DateTime -> System.Web.Caching.CacheDependency
Public Sub New (filenames As String(), start As DateTime)

매개 변수

filenames
String[]

캐시된 개체가 종속되어 있는 파일 또는 디렉터리 경로로 이루어진 배열입니다. 이러한 리소스가 변경되면 캐시된 해당 개체는 사용할 수 없게 되며 캐시에서 제거됩니다.

start
DateTime

배열에 있는 개체를 마지막으로 수정한 날짜를 확인할 시간입니다.

예제

다음 코드 예제에서는 개체가 메서드 호출에 CacheDependency 매개 변수 인수로 포함되는 경우 두 개의 XML 파일과 DateTime.Now 값을 전달하는 개체를 Cache.Insert 만듭니다.

// Create a DateTime object that determines
// when dependency monitoring begins.
DateTime dt = DateTime.Now;
    // Make key1 dependent on several files.
    String[] files = new String[2];
    files[0] = Server.MapPath("isbn.xml");
    files[1] = Server.MapPath("customer.xml");
    CacheDependency dep = new CacheDependency(files, dt);

    Cache.Insert("key1", "Value 1", dep);
}
    ' Create a DateTime object that determines
    '  when dependency monitoring begins.
    Dim dt As DateTime = DateTime.Now

    ' Make key1 dependent on several files.
    Dim files(2) as String
    files(0) = Server.MapPath("isbn.xml")
    files(1) = Server.MapPath("customer.xml")
    Dim dependency as new CacheDependency(files, dt)

    Cache.Insert("key1", "Value 1", dependency)
End If

설명

매개 변수에 지정된 filenames 디렉터리 또는 파일이 파일 시스템에 없는 경우 누락된 것으로 처리됩니다. 종속성이 있는 개체가 에 추가 Cache될 때 디렉터리 또는 파일이 누락된 경우 해당 디렉터리 또는 파일을 만들 때 캐시된 개체가 에서 Cache 제거됩니다.

예를 들어 c:\stocks\xyz.dat 파일 경로에 종속성이 있는 개체 Cache 를 에 추가한다고 가정합니다. 개체를 만들 때 CacheDependency 해당 파일을 찾을 수 없지만 나중에 만들어지면 xyz.dat 파일을 만들 때 캐시된 개체가 제거됩니다.

참고

변경 내용 추적은 즉시 시작되며 매개 변수를 기반으로 start 하지 않습니다. 매개 변수를 start 사용하여 매개 변수에 전달된 filenames 배열의 마지막 수정 날짜를 확인하려는 과거의 날짜와 시간을 전달합니다. 배열에 있는 개체의 마지막 수정 날짜가 매개 변수에 start 전달된 날짜 및 시간 집합보다 낫으면 캐시된 항목이 에서 Cache제거됩니다.

추가 정보

적용 대상

CacheDependency(String[], String[])

파일 또는 디렉터리에 대한 경로 배열이나, 캐시 키 배열 또는 이 두 가지 배열 모두의 변경 내용을 모니터링하는 CacheDependency 클래스의 새 인스턴스를 초기화합니다.

public:
 CacheDependency(cli::array <System::String ^> ^ filenames, cli::array <System::String ^> ^ cachekeys);
public CacheDependency (string[] filenames, string[] cachekeys);
new System.Web.Caching.CacheDependency : string[] * string[] -> System.Web.Caching.CacheDependency
Public Sub New (filenames As String(), cachekeys As String())

매개 변수

filenames
String[]

캐시된 개체가 종속되어 있는 파일 또는 디렉터리 경로로 이루어진 배열입니다. 이러한 리소스가 변경되면 캐시된 해당 개체는 사용할 수 없게 되며 캐시에서 제거됩니다.

cachekeys
String[]

새 개체가 변경 내용을 모니터링하는 캐시 키 배열입니다. 이러한 캐시 키가 변경되면 이 종속성 개체와 연관된 캐시된 개체는 사용할 수 없게 되어 캐시에서 제거됩니다.

예제

다음 코드 조각은 애플리케이션의 항목을 삽입 하는 방법에 설명 Cache 다른 항목에 키에 대 한 종속성을 사용 하 여 캐시에 배치 합니다. 이 메서드는 배열 구문을 사용하므로 에 추가하는 Cache 항목이 종속되는 키 수를 정의해야 합니다.

public void CreateDependency(Object sender, EventArgs e) {
    // Create a cache entry.
    Cache["key1"] = "Value 1";

    // Make key2 dependent on key1.
    String[] dependencyKey = new String[1];
    dependencyKey[0] = "key1";
    CacheDependency dependency = new CacheDependency(null, dependencyKey);

    Cache.Insert("key2", "Value 2", dependency);

    DisplayValues();
}
Public Sub CreateDependency(sender As Object, e As EventArgs)
    ' Create a cache entry.
    Cache("key1") = "Value 1"

    ' Make key2 dependent on key1.
    Dim dependencyKey(0) As String
    dependencyKey(0) = "key1"
    Dim dependency As new CacheDependency(Nothing, dependencyKey)

    Cache.Insert("key2", "Value 2", dependency)

    DisplayValues()
End Sub

설명

또한 매개 변수에 지정된 filenames 디렉터리 또는 파일이 파일 시스템에 없는 경우 누락된 것으로 처리됩니다. 종속성이 있는 개체가 에 추가 Cache될 때 디렉터리 또는 파일이 누락된 경우 해당 디렉터리 또는 파일을 만들 때 캐시된 개체가 에서 Cache 제거됩니다.

예를 들어 c:\stocks\xyz.dat 파일 경로에 종속성이 있는 개체 Cache 를 에 추가한다고 가정합니다. 개체를 만들 때 CacheDependency 해당 파일을 찾을 수 없지만 나중에 만들어지면 xyz.dat 파일을 만들 때 캐시된 개체가 제거됩니다.

그러나 cachekeys 종속성은 동일한 방식으로 작동하지 않습니다. 삽입 시 매개 변수에 cachekeys 하나 이상의 값이 없으면 삽입이 실패합니다. 이 시나리오에는 예외가 throw되지 않습니다.

추가 정보

적용 대상

CacheDependency(String[], String[], DateTime)

파일 또는 디렉터리에 대한 경로 배열이나, 캐시 키 배열 또는 이 두 가지 배열 모두의 변경 내용을 모니터링하는 CacheDependency 클래스의 새 인스턴스를 초기화합니다.

public:
 CacheDependency(cli::array <System::String ^> ^ filenames, cli::array <System::String ^> ^ cachekeys, DateTime start);
public CacheDependency (string[] filenames, string[] cachekeys, DateTime start);
new System.Web.Caching.CacheDependency : string[] * string[] * DateTime -> System.Web.Caching.CacheDependency
Public Sub New (filenames As String(), cachekeys As String(), start As DateTime)

매개 변수

filenames
String[]

캐시된 개체가 종속되어 있는 파일 또는 디렉터리 경로로 이루어진 배열입니다. 이러한 리소스가 변경되면 캐시된 해당 개체는 사용할 수 없게 되며 캐시에서 제거됩니다.

cachekeys
String[]

새 개체가 변경 내용을 모니터링하는 캐시 키 배열입니다. 이러한 캐시 키가 변경되면 이 종속성 개체와 연관된 캐시된 개체는 사용할 수 없게 되어 캐시에서 제거됩니다.

start
DateTime

filenamescachekeys 배열에 전달된 개체를 마지막으로 수정한 날짜를 확인할 날짜와 시간입니다.

예제

다음 코드 예제에서는 메서드를 CreateDependency 만듭니다. 이 메서드가 호출되면 개체를 DateTime 만들고 속성은 의 매개 변수 key1Cache.Item[]Value 1이 인 캐시 key 에 항목을 추가하는 데 사용됩니다. 그런 다음 의 값을 key1 사용하여 문자열 dependencyKey배열인 를 만듭니다. 그런 다음 이 CacheDependency 생성자는 전달되는 개체를 인스턴스화하고 개체를 DateTime 매개 변수 인수로 인스턴스화 CacheDependency 합니다dependencyKey. 메서드는 Cache.Insert 개체를 CacheDependency 매개 변수로 사용하여 다음에 호출됩니다. 이렇게 하면 개체가 키에 종속된 메서드를 Insert 사용하여 캐시에 추가됩니다 key1 .

public void CreateDependency(Object sender, EventArgs e)
{
    // Create a DateTime object.
    DateTime dt = DateTime.Now.AddSeconds(10);

    // Create a cache entry.
    Cache["key1"] = "Value 1";

    // Make key2 dependent on key1.
    String[] dependencyKey = new String[1];
    dependencyKey[0] = "key1";
    CacheDependency dependency = new CacheDependency(null, dependencyKey, dt);

    Cache.Insert("key2", "Value 2", dependency);

    DisplayValues();
}
Public Sub CreateDependency(sender As Object, e As EventArgs)
' Create a DateTime object.
Dim dt as DateTime = DateTime.Now.AddSeconds(10)        

' Create a cache entry.
    Cache("key1") = "Value 1"

    ' Make key2 dependent on key1.
    Dim dependencyKey(0) As String
    dependencyKey(0) = "key1"
    Dim dependency As new CacheDependency(Nothing, dependencyKey, dt)

    Cache.Insert("key2", "Value 2", dependency)

    DisplayValues()
End Sub

설명

또한 매개 변수에 지정된 filenames 디렉터리 또는 파일이 파일 시스템에 없는 경우 누락된 것으로 처리됩니다. 종속성이 있는 개체가 에 추가 Cache될 때 디렉터리 또는 파일이 누락된 경우 해당 디렉터리 또는 파일을 만들 때 캐시된 개체가 에서 Cache 제거됩니다.

예를 들어 c:\stocks\xyz.dat 파일 경로에 종속성이 있는 개체 Cache 를 에 추가한다고 가정합니다. 개체를 만들 때 CacheDependency 해당 파일을 찾을 수 없지만 나중에 만들어지면 xyz.dat 파일을 만들 때 캐시된 개체가 제거됩니다.

그러나 cachekeys 종속성은 동일한 방식으로 작동하지 않습니다. 삽입 시 매개 변수에 cachekeys 하나 이상의 값이 없으면 삽입이 실패합니다. 이 시나리오에는 예외가 throw되지 않습니다.

참고

변경 내용 추적은 즉시 시작되며 매개 변수를 기반으로 start 하지 않습니다. 매개 변수를 start 사용하여 또는 cachekeys 매개 변수에 전달된 filenames 개체의 마지막 수정 날짜를 확인하려는 과거의 날짜와 시간을 전달합니다. 이러한 개체의 마지막 수정 날짜가 매개 변수에 start 전달된 날짜 및 시간 집합보다 낫으면 캐시된 항목이 에서 Cache제거됩니다.

추가 정보

적용 대상

CacheDependency(String[], String[], CacheDependency)

파일 또는 디렉터리에 대한 경로 배열이나, 캐시 키 배열 또는 이 두 가지 배열 모두의 변경 내용을 모니터링하는 CacheDependency 클래스의 새 인스턴스를 초기화합니다. 또한 CacheDependency 클래스의 다른 인스턴스에 대해 종속되도록 합니다.

public:
 CacheDependency(cli::array <System::String ^> ^ filenames, cli::array <System::String ^> ^ cachekeys, System::Web::Caching::CacheDependency ^ dependency);
public CacheDependency (string[] filenames, string[] cachekeys, System.Web.Caching.CacheDependency dependency);
new System.Web.Caching.CacheDependency : string[] * string[] * System.Web.Caching.CacheDependency -> System.Web.Caching.CacheDependency
Public Sub New (filenames As String(), cachekeys As String(), dependency As CacheDependency)

매개 변수

filenames
String[]

캐시된 개체가 종속되어 있는 파일 또는 디렉터리 경로로 이루어진 배열입니다. 이러한 리소스가 변경되면 캐시된 해당 개체는 사용할 수 없게 되며 캐시에서 제거됩니다.

cachekeys
String[]

새 개체가 변경 내용을 모니터링하는 캐시 키 배열입니다. 이러한 캐시 키가 변경되면 이 종속성 개체와 연관된 캐시된 개체는 사용할 수 없게 되어 캐시에서 제거됩니다.

dependency
CacheDependency

이 인스턴스가 종속된 CacheDependency 클래스의 다른 인스턴스입니다.

예제

다음 코드 예제에서는 메서드를 CreateDependency 만듭니다. 이 메서드를 호출 하는 경우는 사용 합니다 Cache.Item[] 속성을 사용 하 여 항목을 추가 하는 캐시 key 에 매개 변수 key1 및 값입니다 Value 1. 그런 다음 의 값을 key1 사용하여 문자열 dependencyKey배열인 를 만듭니다. CacheDependency.CacheDependency 생성자는 매개 변수 인수로 CacheDependency 전달 dependencyKey 되는 개체 를 dep1만드는 데 사용됩니다. 두 번째 CacheDependency 개체인 dep2는 세 번째 매개 변수 인수로 전달된 이 dep1 생성자를 사용하여 만들어집니다. 이 두 번째 종속성은 첫 번째 종속성에 따라 달라집니다. 메서드는 Cache.Insert 두 번째 CacheDependency 개체를 매개 변수로 사용하여 다음에 호출됩니다. 첫 번째 종속성이 어떤 방식으로든 변경되면 캐시된 항목이 무효화됩니다.

public void CreateDependency(Object sender, EventArgs e) {
    // Create a cache entry.
    Cache["key1"] = "Value 1";

    // Make key2 dependent on key1.
    String[] dependencyKey = new String[1];
    dependencyKey[0] = "key1";
    CacheDependency dep1 = new CacheDependency(null, dependencyKey);

    // Make a second CacheDependency dependent on dep1.        
    CacheDependency dep2 = new CacheDependency(null, null, dep1);

    Cache.Insert("key2", "Value 2", dep2);

    DisplayValues();
}
 Public Sub CreateDependency(sender As [Object], e As EventArgs)
   ' Create a cache entry.
   Cache("key1") = "Value 1"

   ' Make key2 dependent on key1 using double dependency.
   Dim dependencyKey(0) As [String]
   dependencyKey(0) = "key1"
   Dim dep1 As New CacheDependency(Nothing, dependencyKey)

   ' Make a second CacheDependency dependent on dep1.        
   Dim dep2 As New CacheDependency(Nothing, Nothing, dep1)

   Cache.Insert("key2", "Value 2", dep2)

   DisplayValues()
End Sub 'CreateDependency

설명

또한 매개 변수에 지정된 filenames 디렉터리 또는 파일이 파일 시스템에 없는 경우 누락된 것으로 처리됩니다. 종속성이 있는 개체가 에 추가 Cache될 때 디렉터리 또는 파일이 누락된 경우 해당 디렉터리 또는 파일을 만들 때 캐시된 개체가 에서 Cache 제거됩니다.

예를 들어 c:\stocks\xyz.dat 파일 경로에 종속성이 있는 개체 Cache 를 에 추가한다고 가정합니다. 개체를 만들 때 CacheDependency 해당 파일을 찾을 수 없지만 나중에 만들어지면 xyz.dat 파일을 만들 때 캐시된 개체가 제거됩니다.

그러나 cachekeys 종속성은 동일한 방식으로 작동하지 않습니다. 삽입 시 매개 변수에 cachekeys 하나 이상의 값이 없으면 삽입이 실패합니다. 이 시나리오에는 예외가 throw되지 않습니다.

적용 대상

CacheDependency(String[], String[], CacheDependency, DateTime)

파일 또는 디렉터리에 대한 경로 배열이나, 캐시 키 배열 또는 이 두 가지 배열 모두의 변경 내용을 모니터링하는 CacheDependency 클래스의 새 인스턴스를 초기화합니다. 또한 CacheDependency 클래스의 인스턴스와 변경 모니터링이 시작되는 시간에 종속되도록 합니다.

public:
 CacheDependency(cli::array <System::String ^> ^ filenames, cli::array <System::String ^> ^ cachekeys, System::Web::Caching::CacheDependency ^ dependency, DateTime start);
public CacheDependency (string[] filenames, string[] cachekeys, System.Web.Caching.CacheDependency dependency, DateTime start);
new System.Web.Caching.CacheDependency : string[] * string[] * System.Web.Caching.CacheDependency * DateTime -> System.Web.Caching.CacheDependency
Public Sub New (filenames As String(), cachekeys As String(), dependency As CacheDependency, start As DateTime)

매개 변수

filenames
String[]

캐시된 개체가 종속되어 있는 파일 또는 디렉터리 경로로 이루어진 배열입니다. 이러한 리소스가 변경되면 캐시된 해당 개체는 사용할 수 없게 되며 캐시에서 제거됩니다.

cachekeys
String[]

새 개체가 변경 내용을 모니터링하는 캐시 키 배열입니다. 이러한 캐시 키가 변경되면 이 종속성 개체와 연관된 캐시된 개체는 사용할 수 없게 되어 캐시에서 제거됩니다.

dependency
CacheDependency

이 인스턴스가 종속된 CacheDependency 클래스의 다른 인스턴스입니다.

start
DateTime

배열에 있는 개체와 CacheDependency 개체를 마지막으로 수정한 날짜를 확인할 시간입니다.

예제

다음 코드 예제에서는 메서드를 보여줍니다 CreateDependency . 이 메서드가 호출되면 개체 Cache.Item[]DateTime 만들고 속성은 의 키 매개 변수 key1 와 값Value 1이 인 캐시에 항목을 추가하는 데 사용됩니다. 그런 다음 첫 dependencyKey번째(및 만) 인덱스의 값을 값으로 설정하여 문자열 배열인 key1 를 만듭니다. CacheDependency.CacheDependency 그런 다음 생성자를 사용하여 매개 변수 인수로 전달되는 개체dep1를 만듭니 CacheDependencydependencyKey. 그런 다음 이 dep2생성자를 dep1 사용하여 및 매개 변수 인수로 전달된 개체를 DateTime 사용하여 두 번째 CacheDependency 개체인 를 만듭니다. 이 두 번째 종속성은 첫 번째 종속성에 따라 달라지고 종속성 모니터링은 메서드가 호출된 후 10초 후에 CreateDependency 시작됩니다. 메서드는 Cache.Insert 두 번째 CacheDependency 개체를 매개 변수로 사용하여 다음에 호출됩니다. 첫 번째 종속성이 어떤 방식으로든 변경되면 캐시된 항목이 무효화됩니다.

public void CreateDependency(Object sender, EventArgs e) {
    // Create a DateTime object.
    DateTime dt = DateTime.Now.AddSeconds(10);

    // Create a cache entry.
    Cache["key1"] = "Value 1";

    // Make key2 dependent on key1.
    String[] dependencyKey = new String[1];
    dependencyKey[0] = "key1";
    CacheDependency dep1 = new CacheDependency(null, dependencyKey);

    // Make a second CacheDependency dependent on dep1.
    // and use dt to start change monitoring.        
    CacheDependency dep2 = new CacheDependency(null, null, dep1, dt);

    Cache.Insert("key2", "Value 2", dep2);

    DisplayValues();
}
 Public Sub CreateDependency(sender As [Object], e As EventArgs)
   ' Create a DateTime object.
   Dim dt as DateTime = DateTime.Now.AddSeconds(10)        

   ' Create a cache entry.
   Cache("key1") = "Value 1"

   ' Make key2 dependent on key1 using double dependency.
   Dim dependencyKey(0) As [String]
   dependencyKey(0) = "key1"
   Dim dep1 As New CacheDependency(Nothing, dependencyKey)

   ' Make a second CacheDependency dependent on dep1
   ' and use dt to start change monitoring.        
   Dim dep2 As New CacheDependency(Nothing, Nothing, dep1, dt)

   Cache.Insert("key2", "Value 2", dep2)

   DisplayValues()
End Sub 'CreateDependency

설명

또한 매개 변수에 지정된 filenames 디렉터리 또는 파일이 파일 시스템에 없는 경우 누락된 것으로 처리됩니다. 종속성이 있는 개체가 에 추가 Cache될 때 디렉터리 또는 파일이 누락된 경우 해당 디렉터리 또는 파일을 만들 때 캐시된 개체가 에서 Cache 제거됩니다.

예를 들어 c:\stocks\xyz.dat 파일 경로에 종속성이 있는 개체 Cache 를 에 추가한다고 가정합니다. 개체를 만들 때 CacheDependency 해당 파일을 찾을 수 없지만 나중에 만들어지면 xyz.dat 파일을 만들 때 캐시된 개체가 제거됩니다.

그러나 cachekeys 종속성은 동일한 방식으로 작동하지 않습니다. 삽입 시 매개 변수에 cachekeys 하나 이상의 값이 없으면 삽입이 실패합니다. 이 시나리오에는 예외가 throw되지 않습니다.

참고

변경 내용 추적은 즉시 시작되며 매개 변수를 기반으로 start 하지 않습니다. 매개 변수를 start 사용하여 , cachekeys또는 dependency 매개 변수에 전달된 filenames개체의 마지막 수정 날짜를 확인하려는 과거의 날짜와 시간을 전달합니다. 해당 개체의 마지막 수정 날짜가 매개 변수에 start 전달된 날짜 및 시간보다 낫으면 캐시된 항목이 에서 Cache제거됩니다.

추가 정보

적용 대상