CacheDependency 建構函式
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
初始化 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 中移除快取的物件。
例如,假設您已將物件新增至 Cache ,其相依於下列檔案路徑:c:\stocks\xyz.dat。 如果在建立物件時 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 中移除快取的物件。
例如,假設您已將物件新增至 Cache ,其相依於下列檔案路徑:c:\stocks\xyz.dat。 如果在建立物件時 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 中移除快取的物件。
例如,假設您已將物件新增至 Cache ,其相依於下列檔案路徑:c:\stocks\xyz.dat。 如果在建立物件時 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
檢查陣列中物件的上次修改日期所根據的時間。
範例
下列程式代碼範例會建立 物件,當物件包含在方法呼叫中Cache.Insert做為參數自變數時,會傳遞兩個 CacheDependency XML 檔案和一個DateTime.Now值。
// 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 中移除快取的物件。
例如,假設您已將物件新增至 Cache ,其相依於下列檔案路徑:c:\stocks\xyz.dat。 如果在建立物件時 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 中移除快取的物件。
例如,假設您已將物件新增至 Cache ,其相依於下列檔案路徑:c:\stocks\xyz.dat。 如果在建立物件時 CacheDependency 找不到該檔案,但稍後會建立,則會在建立xyz.dat檔案時移除快取的物件。
不過,相 cachekeys
依性無法以相同方式運作。 如果參數中 cachekeys
至少有一個值不存在於插入時,插入就會失敗。 請注意,此案例沒有擲回例外狀況。
另請參閱
適用於
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
檢查物件的上次修改日期所根據的日期和時間 (這些物件是在 filenames
和 cachekeys
陣列中傳入)。
範例
下列程式代碼範例會 CreateDependency
建立 方法。 呼叫這個方法時,它會建立 DateTime 物件,並使用 Cache.Item[] 屬性將專案加入至快 key
取,且 參數 key1
為 和值 Value 1
。 接著,字串數位 dependencyKey
也會使用的值 key1
來建立。 此 CacheDependency 建構函式接著會具現化 CacheDependency 傳遞 dependencyKey
的物件,並將 DateTime 對象當做參數自變數。 接下來會 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 中移除快取的物件。
例如,假設您將物件新增至 Cache 具有下列檔案路徑相依性的物件:c:\stocks\xyz.dat。 如果在建立物件時 CacheDependency 找不到該檔案,但稍後會建立,則會在建立xyz.dat檔案時移除快取的物件。
不過,相 cachekeys
依性無法以相同方式運作。 如果在插入時參數中 cachekeys
至少有一個值不存在,則插入會失敗。 請注意,此案例沒有擲回例外狀況。
注意
變更追蹤會立即開始,而不會直接根據 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 物件, dep1
它會當做參數自變數傳遞 dependencyKey
。 第二 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 中移除快取的物件。
例如,假設您將物件新增至 Cache 具有下列檔案路徑相依性的物件:c:\stocks\xyz.dat。 如果在建立物件時 CacheDependency 找不到該檔案,但稍後會建立,則會在建立xyz.dat檔案時移除快取的物件。
不過,相 cachekeys
依性無法以相同方式運作。 如果在插入時參數中 cachekeys
至少有一個值不存在,則插入會失敗。 請注意,此案例沒有擲回例外狀況。
適用於
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
方法。 呼叫這個方法時,它會建立 DateTime 物件,並使用 Cache.Item[] 屬性將專案新增至快取,其中具有的索引鍵參數 key1
和 值 Value 1
。 接著會建立字串 dependencyKey
陣列,其第一個 (值為,而且只會) 索引設定為的值 key1
。 然後,建 CacheDependency.CacheDependency 構函式會用來建立 CacheDependency 物件, dep1
該物件會傳遞 dependencyKey
為參數自變數。 接著會使用此建構函式來建立第二 CacheDependency 個 物件 dep2
,並將 dep1
對象 DateTime 當做參數自變數傳遞。 第二個相依性相依於第一個相依性,在呼叫 方法之後 CreateDependency
,相依性監視將會開始 10 秒。 接下來會 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 中移除快取的物件。
例如,假設您將物件新增至 Cache 具有下列檔案路徑相依性的物件:c:\stocks\xyz.dat。 如果在建立物件時 CacheDependency 找不到該檔案,但稍後會建立,則會在建立xyz.dat檔案時移除快取的物件。
不過,相 cachekeys
依性無法以相同方式運作。 如果在插入時參數中 cachekeys
至少有一個值不存在,則插入會失敗。 請注意,此案例沒有擲回例外狀況。
注意
變更追蹤會立即開始,而不會直接根據 start
參數。
start
使用 參數來傳遞過去您想要檢查傳入、 cachekeys
或 dependency
參數之任何物件filenames
上次修改日期的日期和時間。 如果上述任何物件的上次修改日期晚於 參數中 start
傳遞的日期和時間,則會從 Cache中移除快取的專案。