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, von denen abgeleitet CacheDependency wird, 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 ableiten CacheDependencymöchten, implementieren Sie diese Version des CacheDependency Konstruktors.
Siehe auch
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. Anschließend Cache.Insert wird der Methode ein Element hinzugefügt, das Cache von dieser 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 dem Element Cache eine Abhängigkeit von einer Datei hinzuzufügen.
// 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 filename
Parameter angegebene Verzeichnis oder Datei nicht im Dateisystem gefunden wird, wird es als fehlender Wert behandelt. Wenn das Verzeichnis oder die Datei fehlt, wenn das Objekt mit der Abhängigkeit dem CacheObjekt hinzugefügt wird, wird das zwischengespeicherte Objekt aus dem Cache Verzeichnis oder der Datei entfernt, wenn das Verzeichnis oder die Datei erstellt wird.
Angenommen, Sie fügen dem Objekt Cache eine Abhängigkeit vom folgenden Dateipfad hinzu: c:\stocks\xyz.dat. Wenn diese Datei beim Erstellen des CacheDependency Objekts nicht gefunden wird, aber später erstellt wird, wird das zwischengespeicherte Objekt nach der Erstellung der xyz.dat-Datei entfernt.
Siehe auch
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 Sie mithilfe der Cache.Insert Methode ein Element zu den Cache Abhängigkeiten eines Arrays von Dateien hinzufü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 verzeichnisse oder Dateien, die filenames
im Parameter angegeben sind, im Dateisystem nicht gefunden wird, wird sie auch als fehlt behandelt. Wenn ein Verzeichnis oder eine Datei fehlt, wenn das Objekt mit der Abhängigkeit dem CacheObjekt hinzugefügt wird, wird das zwischengespeicherte Objekt beim Cache Erstellen dieses Verzeichnisses oder der Datei entfernt.
Angenommen, Sie fügen dem Objekt Cache eine Abhängigkeit vom folgenden Dateipfad hinzu: c:\stocks\xyz.dat. Wenn diese Datei beim Erstellen des CacheDependency Objekts nicht gefunden wird, aber später erstellt wird, wird das zwischengespeicherte Objekt nach 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 Cache das Element, das Sie hinzufügen, abhängig ist.
Siehe auch
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 Objekt instanziieren und dann ein CacheDependency Element in die Cache Abhängigkeit einzufügen. Der dt
wert, der start
im Parameter übergeben wird, wird auf 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
Hinweise
Wenn das im filename
Parameter angegebene Verzeichnis oder Datei nicht im Dateisystem gefunden wird, wird es als fehlender Wert behandelt. Wenn das Verzeichnis oder die Datei fehlt, wenn das Objekt mit der Abhängigkeit dem CacheObjekt hinzugefügt wird, wird das zwischengespeicherte Objekt aus dem Cache Verzeichnis oder der Datei entfernt, wenn das Verzeichnis oder die Datei erstellt wird.
Angenommen, Sie fügen dem Objekt Cache eine Abhängigkeit vom folgenden Dateipfad hinzu: c:\stocks\xyz.dat. Wenn diese Datei beim Erstellen des CacheDependency Objekts nicht gefunden wird, aber später erstellt wird, wird das zwischengespeicherte Objekt nach 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, mit der Sie das zuletzt geänderte Datum des Verzeichnisses oder der filename
datei überprüfen möchten, das im Parameter übergeben wurde. Wenn das datum der letzten Änderung später als das datum und die uhrzeitsatz, der start
im Parameter übergeben wurde, wird das zwischengespeicherte Element aus dem Cache.
Siehe auch
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 verzeichnisse oder Dateien, die filenames
im Parameter angegeben sind, nicht im Dateisystem gefunden wird, wird sie als fehlt behandelt. Wenn ein Verzeichnis oder eine Datei fehlt, wenn das Objekt mit der Abhängigkeit dem CacheObjekt hinzugefügt wird, wird das zwischengespeicherte Objekt beim Cache Erstellen dieses Verzeichnisses oder der Datei entfernt.
Angenommen, Sie fügen dem Objekt Cache eine Abhängigkeit vom folgenden Dateipfad hinzu: c:\stocks\xyz.dat. Wenn diese Datei beim Erstellen des CacheDependency Objekts nicht gefunden wird, aber später erstellt wird, wird das zwischengespeicherte Objekt nach 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, mit der Sie das zuletzt geänderte Datum des Arrays überprüfen möchten, das im filenames
Parameter übergeben wird. Wenn das letzte Änderungsdatum eines Objekts im Array später als das datums- und uhrzeitset ist, das start
im Parameter übergeben wird, wird das zwischengespeicherte Element aus dem Cache.
Siehe auch
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 in die Anwendung Cache mit einer Abhängigkeit von einem Schlüssel zu einem anderen Element einfügen, das im Cache platziert ist. Da diese Methode Arraysyntax verwendet, müssen Sie die Anzahl der Schlüssel definieren, auf denen das Element, das Sie hinzufügen, Cache 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 verzeichnisse oder Dateien, die filenames
im Parameter angegeben sind, im Dateisystem nicht gefunden wird, wird sie auch als fehlt behandelt. Wenn ein Verzeichnis oder eine Datei fehlt, wenn das Objekt mit der Abhängigkeit dem CacheObjekt hinzugefügt wird, wird das zwischengespeicherte Objekt beim Cache Erstellen dieses Verzeichnisses oder der Datei entfernt.
Angenommen, Sie fügen dem Objekt Cache eine Abhängigkeit vom folgenden Dateipfad hinzu: c:\stocks\xyz.dat. Wenn diese Datei beim Erstellen des CacheDependency Objekts nicht gefunden wird, aber später erstellt wird, wird das zwischengespeicherte Objekt nach der Erstellung der xyz.dat-Datei entfernt.
cachekeys
Die Abhängigkeit funktioniert jedoch nicht auf die gleiche Weise. Wenn mindestens ein Wert im cachekeys
Parameter zum Zeitpunkt eines Einfügens nicht vorhanden ist, schlägt das Einfügen fehl. Beachten Sie, dass für dieses Szenario keine Ausnahme ausgelöst wird.
Siehe auch
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, erstellt sie ein Objekt und die Cache.Item[] Eigenschaft wird verwendet, um dem Cache ein DateTime Element mit einem Parameter und key1
einem key
Wert Value 1
hinzuzufügen. Ein Array von Zeichenfolgen, dependencyKey
wird dann mit dem Wert von key1
ebenfalls erstellt. Dieser CacheDependency Konstruktor instanziiert dann ein CacheDependency Objekt, das übergibt und das DateTime Objekt als Parameterargumente übergeben dependencyKey
wird. Die Methode wird als nächstes aufgerufen, indem das Cache.Insert CacheDependency Objekt als Parameter verwendet wird. Dadurch wird das Objekt dem Cache mithilfe Insert der key1
Methode hinzugefügt, die vom Schlüssel abhängig ist.
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 verzeichnisse oder Dateien, die filenames
im Parameter angegeben sind, im Dateisystem nicht gefunden wird, wird sie auch als fehlt behandelt. Wenn ein Verzeichnis oder eine Datei fehlt, wenn das Objekt mit der Abhängigkeit dem CacheObjekt hinzugefügt wird, wird das zwischengespeicherte Objekt beim Cache Erstellen dieses Verzeichnisses oder der Datei entfernt.
Angenommen, Sie fügen dem Objekt Cache eine Abhängigkeit vom folgenden Dateipfad hinzu: c:\stocks\xyz.dat. Wenn diese Datei beim Erstellen des CacheDependency Objekts nicht gefunden wird, aber später erstellt wird, wird das zwischengespeicherte Objekt nach der Erstellung der xyz.dat-Datei entfernt.
cachekeys
Die Abhängigkeit funktioniert jedoch nicht auf die gleiche Weise. Wenn mindestens ein Wert im cachekeys
Parameter zum Zeitpunkt eines Einfügens nicht vorhanden ist, schlägt das Einfügen 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, mit dem Sie das datum der letzten Änderung eines Objekts überprüfen möchten, das an den oder cachekeys
den filenames
Parametern übergeben wurde. Wenn das datum der letzten Änderung eines dieser Objekte später als das Datum und die uhrzeitsatz ist, der start
im Parameter übergeben wird, wird das zwischengespeicherte Element aus dem Cache.
Siehe auch
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 einem Parameter und key1
einem key
Wert Value 1
hinzuzufügen. Ein Array von Zeichenfolgen, dependencyKey
wird dann mit dem Wert von key1
ebenfalls erstellt. Der CacheDependency.CacheDependency Konstruktor wird verwendet, um ein CacheDependency Objekt zu erstellen, dep1
das als Parameterargument übergeben wird dependencyKey
. Ein zweites Objekt, wird mithilfe dieses Konstruktors erstellt, dep2
das dep1
als drittes CacheDependency Parameterargument übergeben wird. Diese zweite Abhängigkeit ist abhängig vom ersten. Die Methode wird als nächstes aufgerufen, indem das Cache.Insert zweite CacheDependency Objekt als Parameter verwendet wird. Wenn sich die erste Abhängigkeit auf irgendeine 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 auch eine der im Parameter angegebenen Verzeichnisse oder Dateien nicht im filenames
Dateisystem gefunden wird, wird sie als fehlendes Behandelt. Wenn ein Verzeichnis oder eine Datei fehlt, wenn das Objekt mit der Abhängigkeit dem Objekt hinzugefügt Cachewird, wird das zwischengespeicherte Objekt aus dem Cache zeitpunkt der Erstellung des Verzeichnisses oder der Datei entfernt.
Angenommen, Sie fügen dem folgenden Dateipfad ein Objekt Cache hinzu: c:\stocks\xyz.dat. Wenn diese Datei nicht gefunden wird, wenn das CacheDependency Objekt erstellt wird, aber später erstellt wird, wird das zwischengespeicherte Objekt nach der Erstellung der xyz.dat-Datei entfernt.
cachekeys
Die Abhängigkeit funktioniert jedoch nicht auf dieselbe Weise. Wenn mindestens ein Wert im cachekeys
Parameter zum Zeitpunkt eines Einfügens nicht vorhanden ist, schlägt das Einfügen 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, erstellt sie ein Objekt und die Cache.Item[] Eigenschaft wird verwendet, um dem Cache ein DateTime Element mit einem Schlüsselparameter key1
und einem Wert Value 1
hinzuzufügen. Ein Array von Zeichenfolgen, wird dann mit dem Wert am ersten (und nur) Index erstellt, dependencyKey
der auf den Wert festgelegt key1
ist. Der CacheDependency.CacheDependency Konstruktor wird dann zum Erstellen eines CacheDependency Objekts verwendet, dep1
das als Parameterargument übergeben wird dependencyKey
. Ein zweites CacheDependency Objekt, dep2
wird dann mithilfe dieses Konstruktors erstellt und dep1
das DateTime Objekt als Parameterargumente übergeben. Diese zweite Abhängigkeit hängt vom ersten ab, und die Abhängigkeitsüberwachung beginnt 10 Sekunden nach dem Aufruf der CreateDependency
Methode. Die Methode wird als nächstes aufgerufen, indem das Cache.Insert zweite CacheDependency Objekt als Parameter verwendet wird. Wenn sich die erste Abhängigkeit auf irgendeine 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 auch eine der im Parameter angegebenen Verzeichnisse oder Dateien nicht im filenames
Dateisystem gefunden wird, wird sie als fehlendes Behandelt. Wenn ein Verzeichnis oder eine Datei fehlt, wenn das Objekt mit der Abhängigkeit dem Objekt hinzugefügt Cachewird, wird das zwischengespeicherte Objekt aus dem Cache zeitpunkt der Erstellung des Verzeichnisses oder der Datei entfernt.
Angenommen, Sie fügen dem folgenden Dateipfad ein Objekt Cache hinzu: c:\stocks\xyz.dat. Wenn diese Datei nicht gefunden wird, wenn das CacheDependency Objekt erstellt wird, aber später erstellt wird, wird das zwischengespeicherte Objekt nach der Erstellung der xyz.dat-Datei entfernt.
cachekeys
Die Abhängigkeit funktioniert jedoch nicht auf dieselbe Weise. Wenn mindestens ein Wert im cachekeys
Parameter zum Zeitpunkt eines Einfügens nicht vorhanden ist, schlägt das Einfügen fehl. Beachten Sie, dass für dieses Szenario keine Ausnahme ausgelöst wird.
Hinweis
Die Änderungsverfolgung 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, mit der Sie das zuletzt geänderte Datum eines der objekte überprüfen möchten, die in den filenames
, cachekeys
oder dependency
parametern übergeben wurden. Wenn das letzte Änderungsdatum für eine dieser Objekte höher ist als das Datum und die Uhrzeit, die im Parameter übergeben wurde, wird das zwischengespeicherte Element aus dem start
CacheEntfernt.