CacheDependency Konstruktoren
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Initialisiert eine neue Instanz der CacheDependency-Klasse.
Überlädt
CacheDependency() |
Initialisiert eine neue Instanz der CacheDependency-Klasse. |
CacheDependency(String) |
Initialisiert eine neue Instanz der CacheDependency-Klasse, die eine Datei oder ein Verzeichnis auf Änderungen überwacht. |
CacheDependency(String[]) |
Initialisiert eine neue Instanz der CacheDependency-Klasse, die ein Array von Pfaden (zu Dateien oder Verzeichnissen) auf Änderungen überwacht. |
CacheDependency(String, DateTime) |
Initialisiert eine neue Instanz der CacheDependency-Klasse, die eine Datei oder ein Verzeichnis auf Änderungen überwacht. |
CacheDependency(String[], DateTime) |
Initialisiert eine neue Instanz der CacheDependency-Klasse, die ein Array von Pfaden (zu Dateien oder Verzeichnissen) auf Änderungen überwacht, und gibt an, wann die Änderungsüberwachung beginnt. |
CacheDependency(String[], String[]) |
Initialisiert eine neue Instanz der CacheDependency-Klasse, die ein Array von Pfaden (zu Dateien oder Verzeichnissen), ein Array von Cacheschlüsseln oder beides auf Änderungen überwacht. |
CacheDependency(String[], String[], DateTime) |
Initialisiert eine neue Instanz der CacheDependency-Klasse, die ein Array von Pfaden (zu Dateien oder Verzeichnissen), ein Array von Cacheschlüsseln oder beides auf Änderungen überwacht. |
CacheDependency(String[], String[], CacheDependency) |
Initialisiert eine neue Instanz der CacheDependency-Klasse, die ein Array von Pfaden (zu Dateien oder Verzeichnissen), ein Array von Cacheschlüsseln oder beides auf Änderungen überwacht. Außerdem wird eine Abhängigkeit zu einer separaten Instanz der CacheDependency-Klasse hergestellt. |
CacheDependency(String[], String[], CacheDependency, DateTime) |
Initialisiert eine neue Instanz der CacheDependency-Klasse, die ein Array von Pfaden (zu Dateien oder Verzeichnissen), ein Array von Cacheschlüsseln oder beides auf Änderungen überwacht. Außerdem wird eine Abhängigkeit zu einer anderen Instanz der CacheDependency-Klasse und einem Zeitpunkt hergestellt, an dem die Änderungsüberwachung beginnt. |
CacheDependency()
Initialisiert eine neue Instanz der CacheDependency-Klasse.
protected:
CacheDependency();
protected CacheDependency ();
Protected Sub New ()
Beispiele
Das folgende Codebeispiel ist eine Klasse, die diese Version des CacheDependency Konstruktors implementiert, da alle Klassen, die von CacheDependency abgeleitet werden, erforderlich sind.
' 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
Hinweise
Wenn Sie Ihre eigene Klasse von CacheDependencyableiten möchten, implementieren Sie diese Version des CacheDependency Konstruktors.
Weitere Informationen
Gilt für:
CacheDependency(String)
Initialisiert eine neue Instanz der CacheDependency-Klasse, die eine Datei oder ein Verzeichnis auf Änderungen überwacht.
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)
Parameter
- filename
- String
Der Pfad einer Datei oder eines Verzeichnisses, von der bzw. dem das zwischengespeicherte Objekt abhängig ist. Wenn diese Ressource geändert wird, ist das zwischengespeicherte Objekt veraltet und wird aus dem Cache entfernt.
Beispiele
Im folgenden Codebeispiel wird eine Instanz der CacheDependency -Klasse mit einer Abhängigkeit von einer XML-Datei erstellt. Die Cache.Insert -Methode fügt dann ein Element hinzu, das von dieser Cache Datei abhängig ist.
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)
Sie können auch die folgende Technik verwenden, um ein Element mit einer Abhängigkeit von einer Datei hinzuzufügen 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
Hinweise
Wenn das im -Parameter angegebene Verzeichnis oder die filename
datei nicht im Dateisystem gefunden wird, wird es als fehlend behandelt. Wenn das Verzeichnis oder die Datei fehlt, wenn das Objekt mit der Abhängigkeit dem Cachehinzugefügt wird, wird das zwischengespeicherte Objekt aus dem Cache entfernt, wenn das Verzeichnis oder die Datei erstellt wird.
Angenommen, Sie fügen dem ein -Objekt Cache mit einer Abhängigkeit vom folgenden Dateipfad hinzu: c:\stocks\xyz.dat. Wenn diese Datei beim Erstellen des CacheDependency Objekts nicht gefunden wird, sondern später erstellt wird, wird das zwischengespeicherte Objekt bei der Erstellung der xyz.dat Datei entfernt.
Weitere Informationen
Gilt für:
CacheDependency(String[])
Initialisiert eine neue Instanz der CacheDependency-Klasse, die ein Array von Pfaden (zu Dateien oder Verzeichnissen) auf Änderungen überwacht.
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())
Parameter
- filenames
- String[]
Ein Array von Pfaden (zu Dateien oder Verzeichnissen), von dem das zwischengespeicherte Objekt abhängig ist. Wenn eine dieser Ressourcen geändert wird, ist das zwischengespeicherte Objekt veraltet und wird aus dem Cache entfernt.
Beispiele
Im folgenden Codebeispiel wird veranschaulicht, wie die Cache.Insert -Methode verwendet wird, um der Cache ein Element mit Abhängigkeiten von einem Array von Dateien hinzuzufügen. Sie können das Element auch von einem Array von Verzeichnissen abhängig machen.
// 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
Hinweise
Wenn sich eine der Dateien oder Verzeichnisse im Array ändert oder aus dem Array entfernt wird, wird das zwischengespeicherte Element veraltet und aus dem -Objekt der Anwendung Cache entfernt.
Wenn eines der im -Parameter angegebenen Verzeichnisse oder Dateien im filenames
Dateisystem nicht gefunden wird, wird es als fehlend behandelt. Wenn ein Verzeichnis oder eine Datei fehlt, wenn das Objekt mit der Abhängigkeit dem Cachehinzugefügt wird, wird das zwischengespeicherte Objekt aus dem entfernt, wenn das Verzeichnis oder die Cache Datei erstellt wird.
Angenommen, Sie fügen dem ein -Objekt Cache mit einer Abhängigkeit vom folgenden Dateipfad hinzu: c:\stocks\xyz.dat. Wenn diese Datei beim Erstellen des CacheDependency Objekts nicht gefunden wird, sondern später erstellt wird, wird das zwischengespeicherte Objekt bei der Erstellung der xyz.dat Datei entfernt.
Hinweis
Wenn Sie das Array erstellen, das die Dateiabhängigkeiten enthält, müssen Sie die Anzahl der Dateien definieren, von denen das Element, dem Cache Sie hinzufügen, abhängig ist.
Weitere Informationen
Gilt für:
CacheDependency(String, DateTime)
Initialisiert eine neue Instanz der CacheDependency-Klasse, die eine Datei oder ein Verzeichnis auf Änderungen überwacht.
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)
Parameter
- filename
- String
Der Pfad einer Datei oder eines Verzeichnisses, von der bzw. dem das zwischengespeicherte Objekt abhängig ist. Wenn diese Ressource geändert wird, ist das zwischengespeicherte Objekt veraltet und wird aus dem Cache entfernt.
- start
- DateTime
Die Zeit, mit der das Datum der letzten Änderung des Verzeichnisses oder der Datei verglichen werden soll.
Beispiele
Im folgenden Codebeispiel wird dieser Konstruktor verwendet, um ein CacheDependency -Objekt zu instanziieren, und fügt dann ein Element mit dieser Abhängigkeit in die Cache ein. Der dt
im start
Parameter übergebene Wert ist auf DateTime.Nowfestgelegt.
// 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
Hinweise
Wenn das im -Parameter angegebene Verzeichnis oder die filename
datei nicht im Dateisystem gefunden wird, wird es als fehlend behandelt. Wenn das Verzeichnis oder die Datei fehlt, wenn das Objekt mit der Abhängigkeit dem Cachehinzugefügt wird, wird das zwischengespeicherte Objekt aus dem Cache entfernt, wenn das Verzeichnis oder die Datei erstellt wird.
Angenommen, Sie fügen dem ein -Objekt Cache mit einer Abhängigkeit vom folgenden Dateipfad hinzu: c:\stocks\xyz.dat. Wenn diese Datei beim Erstellen des CacheDependency Objekts nicht gefunden wird, sondern später erstellt wird, wird das zwischengespeicherte Objekt bei der Erstellung der xyz.dat Datei entfernt.
Hinweis
Die Änderungsnachverfolgung beginnt sofort und basiert nicht direkt auf dem start
Parameter. Verwenden Sie den start
Parameter, um ein Datum und eine Uhrzeit in der Vergangenheit zu übergeben, anhand derer Sie das Datum der letzten Änderung des Verzeichnisses oder der Datei überprüfen möchten, das bzw. die im filename
Parameter übergeben wurde. Wenn das Datum der letzten Änderung höher als der im start
Parameter übergebene Datums- und Uhrzeitsatz ist, wird das zwischengespeicherte Element aus dem Cacheentfernt.
Weitere Informationen
Gilt für:
CacheDependency(String[], DateTime)
Initialisiert eine neue Instanz der CacheDependency-Klasse, die ein Array von Pfaden (zu Dateien oder Verzeichnissen) auf Änderungen überwacht, und gibt an, wann die Änderungsüberwachung beginnt.
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)
Parameter
- filenames
- String[]
Ein Array von Pfaden (zu Dateien oder Verzeichnissen), von dem das zwischengespeicherte Objekt abhängig ist. Wenn eine dieser Ressourcen geändert wird, ist das zwischengespeicherte Objekt veraltet und wird aus dem Cache entfernt.
- start
- DateTime
Die Zeit, mit der das Datum der letzten Änderung der Objekte im Array verglichen werden soll.
Beispiele
Im folgenden Codebeispiel wird ein CacheDependency -Objekt erstellt, das zwei XML-Dateien und einen DateTime.Now Wert übergibt, wenn das Objekt als Parameterargument in einem Cache.Insert Methodenaufruf enthalten ist.
// 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
Hinweise
Wenn eines der im filenames
Parameter angegebenen Verzeichnisse oder Dateien im Dateisystem nicht gefunden wird, wird es als fehlend behandelt. Wenn ein Verzeichnis oder eine Datei fehlt, wenn das Objekt mit der Abhängigkeit dem Cachehinzugefügt wird, wird das zwischengespeicherte Objekt aus dem entfernt, wenn das Verzeichnis oder die Cache Datei erstellt wird.
Angenommen, Sie fügen dem ein -Objekt Cache mit einer Abhängigkeit vom folgenden Dateipfad hinzu: c:\stocks\xyz.dat. Wenn diese Datei beim Erstellen des CacheDependency Objekts nicht gefunden wird, sondern später erstellt wird, wird das zwischengespeicherte Objekt bei der Erstellung der xyz.dat Datei entfernt.
Hinweis
Die Änderungsnachverfolgung beginnt sofort und basiert nicht direkt auf dem start
Parameter. Verwenden Sie den start
-Parameter, um ein Datum und eine Uhrzeit in der Vergangenheit zu übergeben, anhand derer Sie das Datum der letzten Änderung des Arrays überprüfen möchten, das filenames
im Parameter übergeben wurde. Wenn das Datum der letzten Änderung eines Objekts im Array höher als der im Parameter übergebene start
Datums- und Uhrzeitsatz ist, wird das zwischengespeicherte Element aus dem Cacheentfernt.
Weitere Informationen
Gilt für:
CacheDependency(String[], String[])
Initialisiert eine neue Instanz der CacheDependency-Klasse, die ein Array von Pfaden (zu Dateien oder Verzeichnissen), ein Array von Cacheschlüsseln oder beides auf Änderungen überwacht.
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())
Parameter
- filenames
- String[]
Ein Array von Pfaden (zu Dateien oder Verzeichnissen), von dem das zwischengespeicherte Objekt abhängig ist. Wenn eine dieser Ressourcen geändert wird, ist das zwischengespeicherte Objekt veraltet und wird aus dem Cache entfernt.
- cachekeys
- String[]
Ein Array von Cacheschlüsseln, bei dem Änderungen durch das neue Objekt überwacht werden. Bei einer Änderung an einem dieser Cacheschlüssel ist das zwischengespeicherte Objekt, das diesem Abhängigkeitsobjekt zugeordnet ist, veraltet und wird aus dem Cache entfernt.
Beispiele
Das folgende Codefragment veranschaulicht, wie Sie ein Element mit einer Abhängigkeit von einem Schlüssel zu einem anderen Element, das im Cache platziert ist, in ihre Anwendung Cache einfügen. Da diese Methode Arraysyntax verwendet, müssen Sie die Anzahl der Schlüssel definieren, von denen das Element, dem Cache Sie hinzufügen, abhängig ist.
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
Hinweise
Wenn eines der im -Parameter angegebenen Verzeichnisse oder Dateien im filenames
Dateisystem nicht gefunden wird, wird es als fehlend behandelt. Wenn ein Verzeichnis oder eine Datei fehlt, wenn das Objekt mit der Abhängigkeit dem Cachehinzugefügt wird, wird das zwischengespeicherte Objekt aus dem entfernt, wenn das Verzeichnis oder die Cache Datei erstellt wird.
Angenommen, Sie fügen dem ein -Objekt Cache mit einer Abhängigkeit vom folgenden Dateipfad hinzu: c:\stocks\xyz.dat. Wenn diese Datei beim Erstellen des CacheDependency Objekts nicht gefunden wird, sondern später erstellt wird, wird das zwischengespeicherte Objekt bei der Erstellung der xyz.dat Datei entfernt.
Die Abhängigkeit funktioniert jedoch cachekeys
nicht auf die gleiche Weise. Wenn mindestens ein Wert im cachekeys
Parameter zum Zeitpunkt einer Einfügung nicht vorhanden ist, schlägt die Einfügung fehl. Beachten Sie, dass für dieses Szenario keine Ausnahme ausgelöst wird.
Weitere Informationen
Gilt für:
CacheDependency(String[], String[], DateTime)
Initialisiert eine neue Instanz der CacheDependency-Klasse, die ein Array von Pfaden (zu Dateien oder Verzeichnissen), ein Array von Cacheschlüsseln oder beides auf Änderungen überwacht.
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)
Parameter
- filenames
- String[]
Ein Array von Pfaden (zu Dateien oder Verzeichnissen), von dem das zwischengespeicherte Objekt abhängig ist. Wenn eine dieser Ressourcen geändert wird, ist das zwischengespeicherte Objekt veraltet und wird aus dem Cache entfernt.
- cachekeys
- String[]
Ein Array von Cacheschlüsseln, bei dem Änderungen durch das neue Objekt überwacht werden. Bei einer Änderung an einem dieser Cacheschlüssel ist das zwischengespeicherte Objekt, das diesem Abhängigkeitsobjekt zugeordnet ist, veraltet und wird aus dem Cache entfernt.
- start
- DateTime
Datum und Uhrzeit, mit denen das Datum der letzten Änderung der im filenames
-Array und im cachekeys
-Array übergebenen Objekte verglichen werden soll.
Beispiele
Im folgenden Codebeispiel wird eine CreateDependency
-Methode erstellt. Wenn diese Methode aufgerufen wird, wird ein DateTime -Objekt erstellt, und die Cache.Item[] -Eigenschaft wird verwendet, um dem Cache ein Element mit dem key
Parameter key1
und dem Wert von Value 1
hinzuzufügen. Anschließend wird ein Array von Zeichenfolgen mit dependencyKey
dem Wert von key1
erstellt. Dieser CacheDependency Konstruktor instanziiert dann ein CacheDependency -Objekt, das und das DateTime -Objekt als Parameterargumente übergibtdependencyKey
. Die Cache.Insert -Methode wird als Nächstes aufgerufen, wobei das CacheDependency -Objekt als Parameter verwendet wird. Dadurch ist das Objekt, das dem Cache mithilfe der -Methode hinzugefügt wird, Insert vom key1
Schlüssel abhängig.
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
Hinweise
Wenn eines der im -Parameter angegebenen Verzeichnisse oder Dateien im filenames
Dateisystem nicht gefunden wird, wird es als fehlend behandelt. Wenn ein Verzeichnis oder eine Datei fehlt, wenn das Objekt mit der Abhängigkeit dem Cachehinzugefügt wird, wird das zwischengespeicherte Objekt aus dem entfernt, wenn das Verzeichnis oder die Cache Datei erstellt wird.
Angenommen, Sie fügen dem ein -Objekt Cache mit einer Abhängigkeit vom folgenden Dateipfad hinzu: c:\stocks\xyz.dat. Wenn diese Datei beim Erstellen des CacheDependency Objekts nicht gefunden wird, sondern später erstellt wird, wird das zwischengespeicherte Objekt bei der Erstellung der xyz.dat Datei entfernt.
Die Abhängigkeit funktioniert jedoch cachekeys
nicht auf die gleiche Weise. Wenn mindestens ein Wert im cachekeys
Parameter zum Zeitpunkt einer Einfügung nicht vorhanden ist, schlägt die Einfügung fehl. Beachten Sie, dass für dieses Szenario keine Ausnahme ausgelöst wird.
Hinweis
Die Änderungsnachverfolgung beginnt sofort und basiert nicht direkt auf dem start
Parameter. Verwenden Sie den start
-Parameter, um ein Datum und eine Uhrzeit in der Vergangenheit zu übergeben, anhand derer Sie das Datum der letzten Änderung eines Objekts überprüfen möchten, das in den filenames
Parametern oder cachekeys
übergeben wurde. Wenn das Datum der letzten Änderung eines dieser Objekte nach dem im start
Parameter übergebenen Datums- und Uhrzeitsatz liegt, wird das zwischengespeicherte Element aus dem Cacheentfernt.
Weitere Informationen
Gilt für:
CacheDependency(String[], String[], CacheDependency)
Initialisiert eine neue Instanz der CacheDependency-Klasse, die ein Array von Pfaden (zu Dateien oder Verzeichnissen), ein Array von Cacheschlüsseln oder beides auf Änderungen überwacht. Außerdem wird eine Abhängigkeit zu einer separaten Instanz der CacheDependency-Klasse hergestellt.
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)
Parameter
- filenames
- String[]
Ein Array von Pfaden (zu Dateien oder Verzeichnissen), von dem das zwischengespeicherte Objekt abhängig ist. Wenn eine dieser Ressourcen geändert wird, ist das zwischengespeicherte Objekt veraltet und wird aus dem Cache entfernt.
- cachekeys
- String[]
Ein Array von Cacheschlüsseln, bei dem Änderungen durch das neue Objekt überwacht werden. Bei einer Änderung an einem dieser Cacheschlüssel ist das zwischengespeicherte Objekt, das diesem Abhängigkeitsobjekt zugeordnet ist, veraltet und wird aus dem Cache entfernt.
- dependency
- CacheDependency
Eine andere Instanz der CacheDependency-Klasse, von dem diese Instanz abhängig ist.
Beispiele
Im folgenden Codebeispiel wird eine CreateDependency
-Methode erstellt. Wenn diese Methode aufgerufen wird, wird die Cache.Item[] -Eigenschaft verwendet, um dem Cache ein Element mit dem key
Parameter key1
und dem Wert von Value 1
hinzuzufügen. Anschließend wird ein Array von Zeichenfolgen mit dependencyKey
dem Wert von key1
erstellt. Der CacheDependency.CacheDependency Konstruktor wird verwendet, um ein CacheDependency -Objekt zu erstellen, dep1
das als Parameterargument übergibt dependencyKey
. Mit diesem Konstruktor wird ein zweites CacheDependency Objekt dep2
erstellt, das dep1
als drittes Parameterargument übergeben wird. Diese zweite Abhängigkeit hängt von der ersten abhängigkeit ab. Die Cache.Insert -Methode wird als Nächstes aufgerufen, wobei das zweite CacheDependency Objekt als Parameter verwendet wird. Wenn sich die erste Abhängigkeit in irgendeiner Weise ändert, wird das zwischengespeicherte Element ungültig.
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
Hinweise
Wenn eines der im -Parameter angegebenen Verzeichnisse oder Dateien im filenames
Dateisystem nicht gefunden wird, wird es als fehlend behandelt. Wenn ein Verzeichnis oder eine Datei fehlt, wenn das Objekt mit der Abhängigkeit dem Cachehinzugefügt wird, wird das zwischengespeicherte Objekt aus dem entfernt, wenn das Verzeichnis oder die Cache Datei erstellt wird.
Angenommen, Sie fügen dem ein -Objekt Cache mit einer Abhängigkeit vom folgenden Dateipfad hinzu: c:\stocks\xyz.dat. Wenn diese Datei beim Erstellen des CacheDependency Objekts nicht gefunden wird, sondern später erstellt wird, wird das zwischengespeicherte Objekt bei der Erstellung der xyz.dat Datei entfernt.
Die Abhängigkeit funktioniert jedoch cachekeys
nicht auf die gleiche Weise. Wenn mindestens ein Wert im cachekeys
Parameter zum Zeitpunkt einer Einfügung nicht vorhanden ist, schlägt die Einfügung fehl. Beachten Sie, dass für dieses Szenario keine Ausnahme ausgelöst wird.
Gilt für:
CacheDependency(String[], String[], CacheDependency, DateTime)
Initialisiert eine neue Instanz der CacheDependency-Klasse, die ein Array von Pfaden (zu Dateien oder Verzeichnissen), ein Array von Cacheschlüsseln oder beides auf Änderungen überwacht. Außerdem wird eine Abhängigkeit zu einer anderen Instanz der CacheDependency-Klasse und einem Zeitpunkt hergestellt, an dem die Änderungsüberwachung beginnt.
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)
Parameter
- filenames
- String[]
Ein Array von Pfaden (zu Dateien oder Verzeichnissen), von dem das zwischengespeicherte Objekt abhängig ist. Wenn eine dieser Ressourcen geändert wird, ist das zwischengespeicherte Objekt veraltet und wird aus dem Cache entfernt.
- cachekeys
- String[]
Ein Array von Cacheschlüsseln, bei dem Änderungen durch das neue Objekt überwacht werden. Bei einer Änderung an einem dieser Cacheschlüssel ist das zwischengespeicherte Objekt, das diesem Abhängigkeitsobjekt zugeordnet ist, veraltet und wird aus dem Cache entfernt.
- dependency
- CacheDependency
Eine andere Instanz der CacheDependency-Klasse, von dem diese Instanz abhängig ist.
- start
- DateTime
Die Zeit, mit der das Datum der letzten Änderung der Objekte in den Arrays und des CacheDependency-Objekts verglichen werden soll.
Beispiele
Das folgende Codebeispiel zeigt eine CreateDependency
-Methode. Wenn diese Methode aufgerufen wird, wird ein DateTime -Objekt erstellt, und die Cache.Item[] -Eigenschaft wird verwendet, um dem Cache ein Element mit dem Schlüsselparameter key1
und dem Wert von Value 1
hinzuzufügen. Anschließend wird ein Array von Zeichenfolgen erstellt, dependencyKey
wobei der Wert am ersten (und einzigen) Index ebenfalls auf den Wert von key1
festgelegt ist. Der CacheDependency.CacheDependency Konstruktor wird dann verwendet, um ein CacheDependency -Objekt zu erstellen, dep1
das als Parameterargument übergibt dependencyKey
. Anschließend wird mit diesem Konstruktor ein zweites CacheDependency -Objekt dep2
erstellt, wobei dep1
und das DateTime -Objekt als Parameterargumente übergeben werden. Diese zweite Abhängigkeit ist von der ersten abhängig, und die Abhängigkeitsüberwachung beginnt 10 Sekunden nach dem Aufruf der CreateDependency
-Methode. Die Cache.Insert -Methode wird als Nächstes aufgerufen, wobei das zweite CacheDependency Objekt als Parameter verwendet wird. Wenn sich die erste Abhängigkeit in irgendeiner Weise ändert, wird das zwischengespeicherte Element ungültig.
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
Hinweise
Wenn eines der im -Parameter angegebenen Verzeichnisse oder Dateien im filenames
Dateisystem nicht gefunden wird, wird es als fehlend behandelt. Wenn ein Verzeichnis oder eine Datei fehlt, wenn das Objekt mit der Abhängigkeit dem Cachehinzugefügt wird, wird das zwischengespeicherte Objekt aus dem entfernt, wenn das Verzeichnis oder die Cache Datei erstellt wird.
Angenommen, Sie fügen dem ein -Objekt Cache mit einer Abhängigkeit vom folgenden Dateipfad hinzu: c:\stocks\xyz.dat. Wenn diese Datei beim Erstellen des CacheDependency Objekts nicht gefunden wird, sondern später erstellt wird, wird das zwischengespeicherte Objekt bei der Erstellung der xyz.dat Datei entfernt.
Die Abhängigkeit funktioniert jedoch cachekeys
nicht auf die gleiche Weise. Wenn mindestens ein Wert im cachekeys
Parameter zum Zeitpunkt einer Einfügung nicht vorhanden ist, schlägt die Einfügung fehl. Beachten Sie, dass für dieses Szenario keine Ausnahme ausgelöst wird.
Hinweis
Die Änderungsnachverfolgung beginnt sofort und basiert nicht direkt auf dem start
Parameter. Verwenden Sie den start
-Parameter, um ein Datum und eine Uhrzeit in der Vergangenheit zu übergeben, anhand derer Sie das Datum der letzten Änderung eines der Objekte überprüfen möchten, die in den filenames
Parametern , cachekeys
oder dependency
übergeben wurden. Wenn das Datum der letzten Änderung für eines dieser Objekte höher als das im Parameter übergebene Datum und Die start
Uhrzeit liegt, wird das zwischengespeicherte Element aus dem Cacheentfernt.