Share via


CacheDependency Constructeurs

Définition

Initialise une nouvelle instance de la classe CacheDependency.

Surcharges

CacheDependency()

Initialise une nouvelle instance de la classe CacheDependency.

CacheDependency(String)

Initialise une nouvelle instance de la classe CacheDependency qui surveille un fichier ou un répertoire pour déceler les modifications.

CacheDependency(String[])

Initialise une nouvelle instance de la classe CacheDependency qui surveille un tableau de chemins d'accès (vers des fichiers ou des répertoires) pour déceler les modifications.

CacheDependency(String, DateTime)

Initialise une nouvelle instance de la classe CacheDependency qui surveille un fichier ou un répertoire pour déceler les modifications.

CacheDependency(String[], DateTime)

Initialise une nouvelle instance de la classe CacheDependency qui surveille un tableau de chemins d'accès (vers des fichiers ou des répertoires) pour déceler les modifications et spécifier l'heure à laquelle la surveillance des modifications commence.

CacheDependency(String[], String[])

Initialise une nouvelle instance de la classe CacheDependency qui surveille un tableau de chemins d'accès (vers des fichiers ou des répertoires), un tableau de clés de cache, ou les deux, pour déceler les modifications.

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

Initialise une nouvelle instance de la classe CacheDependency qui surveille un tableau de chemins d'accès (vers des fichiers ou des répertoires), un tableau de clés de cache, ou les deux, pour déceler les modifications.

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

Initialise une nouvelle instance de la classe CacheDependency qui surveille un tableau de chemins d'accès (vers des fichiers ou des répertoires), un tableau de clés de cache, ou les deux, pour déceler les modifications. Il devient également dépendant d'une instance distincte de la classe CacheDependency.

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

Initialise une nouvelle instance de la classe CacheDependency qui surveille un tableau de chemins d'accès (vers des fichiers ou des répertoires), un tableau de clés de cache, ou les deux, pour déceler les modifications. Il devient également dépendant d'une autre instance de la classe CacheDependency et de l'heure à laquelle la surveillance des modifications commence.

CacheDependency()

Initialise une nouvelle instance de la classe CacheDependency.

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

Exemples

L’exemple de code suivant est une classe qui implémente cette version du CacheDependency constructeur en tant que toutes les classes dérivées CacheDependency sont requises.

' 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

Remarques

Si vous souhaitez dériver votre propre classe de CacheDependency, implémentez cette version du CacheDependency constructeur.

Voir aussi

S’applique à

CacheDependency(String)

Initialise une nouvelle instance de la classe CacheDependency qui surveille un fichier ou un répertoire pour déceler les modifications.

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)

Paramètres

filename
String

Chemin d'accès vers un fichier ou un répertoire dont l'objet mis en cache dépend. Lorsque cette ressource change, l'objet mis en cache devient obsolète et est supprimé du cache.

Exemples

L’exemple de code suivant crée une instance de la CacheDependency classe avec une dépendance sur un fichier XML. La Cache.Insert méthode ajoute ensuite un élément à celui Cache qui dépend de ce fichier.

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)

Vous pouvez également utiliser la technique suivante pour ajouter un élément à l’aide Cache d’une dépendance sur un fichier.

// 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

Remarques

Si le répertoire ou le fichier spécifié dans le paramètre n’est pas trouvé dans le filename système de fichiers, il sera traité comme manquant. Si le répertoire ou le fichier est manquant lorsque l’objet avec la dépendance est ajouté à celui-ci Cache, l’objet mis en cache est supprimé du Cache moment où le répertoire ou le fichier est créé.

Par exemple, supposons que vous ajoutez un objet à l’aide Cache d’une dépendance sur le chemin d’accès de fichier suivant : c:\stock\xyz.dat. Si ce fichier n’est pas trouvé lorsque l’objet CacheDependency est créé, mais est créé ultérieurement, l’objet mis en cache est supprimé lors de la création du fichier xyz.dat.

Voir aussi

S’applique à

CacheDependency(String[])

Initialise une nouvelle instance de la classe CacheDependency qui surveille un tableau de chemins d'accès (vers des fichiers ou des répertoires) pour déceler les modifications.

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())

Paramètres

filenames
String[]

Tableau de chemins d'accès (vers des fichiers ou des répertoires) dont dépend l'objet mis en cache. Lorsque l'une de ces ressources change, l'objet mis en cache devient obsolète et est supprimé du cache.

Exemples

L’exemple de code suivant montre comment utiliser la Cache.Insert méthode pour ajouter un élément aux Cache dépendances sur un tableau de fichiers. Vous pouvez également rendre l’élément dépendant d’un tableau de répertoires.

    // 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

Remarques

Si l’un des fichiers ou répertoires du tableau change ou est supprimé du tableau, l’élément mis en cache devient obsolète et est supprimé de l’objet de Cache l’application.

En outre, si l’un des répertoires ou fichiers spécifiés dans le paramètre n’est pas trouvé dans le filenames système de fichiers, il est traité comme manquant. Si un répertoire ou un fichier est manquant lorsque l’objet avec la dépendance est ajouté à celui-ci Cache, l’objet mis en cache est supprimé du Cache moment où ce répertoire ou fichier est créé.

Par exemple, supposons que vous ajoutez un objet à l’aide Cache d’une dépendance sur le chemin d’accès de fichier suivant : c:\stock\xyz.dat. Si ce fichier n’est pas trouvé lorsque l’objet CacheDependency est créé, mais est créé ultérieurement, l’objet mis en cache est supprimé lors de la création du fichier xyz.dat.

Notes

Lorsque vous créez le tableau qui contient les dépendances de fichier, vous devez définir le nombre de fichiers auxquels l’élément que vous ajoutez Cache dépend.

Voir aussi

S’applique à

CacheDependency(String, DateTime)

Initialise une nouvelle instance de la classe CacheDependency qui surveille un fichier ou un répertoire pour déceler les modifications.

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)

Paramètres

filename
String

Chemin d'accès vers un fichier ou un répertoire dont l'objet mis en cache dépend. Lorsque cette ressource change, l'objet mis en cache devient obsolète et est supprimé du cache.

start
DateTime

Heure par rapport à laquelle vérifier la date de dernière modification du répertoire ou du fichier.

Exemples

L’exemple de code suivant utilise ce constructeur pour instancier un CacheDependency objet, puis insère un élément dans la Cache dépendance. La dt valeur passée dans le start paramètre est définie sur 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 

Remarques

Si le répertoire ou le fichier spécifié dans le paramètre n’est pas trouvé dans le filename système de fichiers, il sera traité comme manquant. Si le répertoire ou le fichier est manquant lorsque l’objet avec la dépendance est ajouté à celui-ci Cache, l’objet mis en cache est supprimé du Cache moment où le répertoire ou le fichier est créé.

Par exemple, supposons que vous ajoutez un objet à l’aide Cache d’une dépendance sur le chemin d’accès de fichier suivant : c:\stock\xyz.dat. Si ce fichier n’est pas trouvé lorsque l’objet CacheDependency est créé, mais est créé ultérieurement, l’objet mis en cache est supprimé lors de la création du fichier xyz.dat.

Notes

Le suivi des modifications commence immédiatement et n’est pas directement basé sur le start paramètre. Utilisez le start paramètre pour passer une date et une heure dans le passé par rapport à laquelle vous souhaitez vérifier la dernière date de modification du répertoire ou du fichier transmis dans le filename paramètre. Si la dernière date de modification est ultérieure à la date et à l’heure passées dans le start paramètre, l’élément mis en cache est supprimé du Cache.

Voir aussi

S’applique à

CacheDependency(String[], DateTime)

Initialise une nouvelle instance de la classe CacheDependency qui surveille un tableau de chemins d'accès (vers des fichiers ou des répertoires) pour déceler les modifications et spécifier l'heure à laquelle la surveillance des modifications commence.

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)

Paramètres

filenames
String[]

Tableau de chemins d'accès (vers des fichiers ou des répertoires) dont dépend l'objet mis en cache. Lorsque l'une de ces ressources change, l'objet mis en cache devient obsolète et est supprimé du cache.

start
DateTime

Heure par rapport à laquelle vérifier la date de dernière modification des objets du tableau.

Exemples

L’exemple de code suivant crée un CacheDependency objet qui transmet deux fichiers XML et une DateTime.Now valeur lorsque l’objet est inclus en tant qu’argument de paramètre dans un Cache.Insert appel de méthode.

// 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

Remarques

Si l’un des répertoires ou fichiers spécifiés dans le paramètre n’est pas trouvé dans le filenames système de fichiers, il est traité comme manquant. Si un répertoire ou un fichier est manquant lorsque l’objet avec la dépendance est ajouté à celui-ci Cache, l’objet mis en cache est supprimé du Cache moment où ce répertoire ou fichier est créé.

Par exemple, supposons que vous ajoutez un objet à l’aide Cache d’une dépendance sur le chemin d’accès de fichier suivant : c:\stock\xyz.dat. Si ce fichier n’est pas trouvé lorsque l’objet CacheDependency est créé, mais est créé ultérieurement, l’objet mis en cache est supprimé lors de la création du fichier xyz.dat.

Notes

Le suivi des modifications commence immédiatement et n’est pas directement basé sur le start paramètre. Utilisez le start paramètre pour passer une date et une heure dans le passé par rapport à laquelle vous souhaitez vérifier la dernière date de modification du tableau passé dans le filenames paramètre. Si la dernière date de modification d’un objet dans le tableau est ultérieure à la date et à l’heure passées dans le start paramètre, l’élément mis en cache est supprimé du Cachefichier .

Voir aussi

S’applique à

CacheDependency(String[], String[])

Initialise une nouvelle instance de la classe CacheDependency qui surveille un tableau de chemins d'accès (vers des fichiers ou des répertoires), un tableau de clés de cache, ou les deux, pour déceler les modifications.

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())

Paramètres

filenames
String[]

Tableau de chemins d'accès (vers des fichiers ou des répertoires) dont dépend l'objet mis en cache. Lorsque l'une de ces ressources change, l'objet mis en cache devient obsolète et est supprimé du cache.

cachekeys
String[]

Tableau de clés de cache que le nouvel objet surveille pour déceler les modifications. Lorsque l'une de ces clés de cache change, l'objet mis en cache associé à cet objet de dépendance devient obsolète et est supprimé du cache.

Exemples

Le fragment de code suivant montre comment insérer un élément dans les éléments Cache de votre application avec une dépendance sur une clé vers un autre élément placé dans le cache. Étant donné que cette méthode utilise la syntaxe de tableau, vous devez définir le nombre de clés sur lesquelles l’élément que vous ajoutez dépend 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

Remarques

En outre, si l’un des répertoires ou fichiers spécifiés dans le paramètre n’est pas trouvé dans le filenames système de fichiers, il est traité comme manquant. Si un répertoire ou un fichier est manquant lorsque l’objet avec la dépendance est ajouté à celui-ci Cache, l’objet mis en cache est supprimé du Cache moment où ce répertoire ou fichier est créé.

Par exemple, supposons que vous ajoutez un objet à l’aide Cache d’une dépendance sur le chemin d’accès de fichier suivant : c:\stock\xyz.dat. Si ce fichier n’est pas trouvé lorsque l’objet CacheDependency est créé, mais est créé ultérieurement, l’objet mis en cache est supprimé lors de la création du fichier xyz.dat.

Toutefois, la cachekeys dépendance ne fonctionne pas de la même façon. Si au moins une valeur dans le cachekeys paramètre n’existe pas au moment d’une insertion, l’insertion échoue. Notez qu’il n’existe aucune exception levée pour ce scénario.

Voir aussi

S’applique à

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

Initialise une nouvelle instance de la classe CacheDependency qui surveille un tableau de chemins d'accès (vers des fichiers ou des répertoires), un tableau de clés de cache, ou les deux, pour déceler les modifications.

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)

Paramètres

filenames
String[]

Tableau de chemins d'accès (vers des fichiers ou des répertoires) dont dépend l'objet mis en cache. Lorsque l'une de ces ressources change, l'objet mis en cache devient obsolète et est supprimé du cache.

cachekeys
String[]

Tableau de clés de cache que le nouvel objet surveille pour déceler les modifications. Lorsque l'une de ces clés de cache change, l'objet mis en cache associé à cet objet de dépendance devient obsolète et est supprimé du cache.

start
DateTime

Date et heure par rapport auxquelles vérifier la date de dernière modification des objets passés dans les tableaux filenames et cachekeys.

Exemples

L’exemple de code suivant crée une CreateDependency méthode. Lorsque cette méthode est appelée, elle crée un DateTime objet et la Cache.Item[] propriété est utilisée pour ajouter un élément au cache avec un key paramètre et key1 une valeur de Value 1. Un tableau de chaînes, dependencyKeyest ensuite créé avec la valeur de key1 également. Ce CacheDependency constructeur instancie ensuite un CacheDependency objet qui passe dependencyKey et l’objet DateTime en tant qu’arguments de paramètre. La Cache.Insert méthode est appelée ensuite, en utilisant l’objet CacheDependency comme paramètre. Cela rend l’objet ajouté au cache à l’aide de la Insert méthode dépendante de la key1 clé.

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

Remarques

En outre, si l’un des répertoires ou fichiers spécifiés dans le paramètre n’est pas trouvé dans le filenames système de fichiers, il est traité comme manquant. Si un répertoire ou un fichier est manquant lorsque l’objet avec la dépendance est ajouté à celui-ci Cache, l’objet mis en cache est supprimé du Cache moment où ce répertoire ou fichier est créé.

Par exemple, supposons que vous ajoutez un objet à l’aide Cache d’une dépendance sur le chemin d’accès de fichier suivant : c:\stock\xyz.dat. Si ce fichier n’est pas trouvé lorsque l’objet CacheDependency est créé, mais est créé ultérieurement, l’objet mis en cache est supprimé lors de la création du fichier xyz.dat.

Toutefois, la cachekeys dépendance ne fonctionne pas de la même façon. Si au moins une valeur dans le cachekeys paramètre n’existe pas au moment d’une insertion, l’insertion échoue. Notez qu’il n’existe aucune exception levée pour ce scénario.

Notes

Le suivi des modifications commence immédiatement et n’est pas directement basé sur le start paramètre. Utilisez le start paramètre pour passer une date et une heure dans le passé par rapport à laquelle vous souhaitez vérifier la dernière date de modification d’un objet passé dans le filenames ou cachekeys les paramètres. Si la dernière date de modification de l’un de ces objets est ultérieure à la date et à l’heure passées dans le start paramètre, l’élément mis en cache est supprimé du Cache.

Voir aussi

S’applique à

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

Initialise une nouvelle instance de la classe CacheDependency qui surveille un tableau de chemins d'accès (vers des fichiers ou des répertoires), un tableau de clés de cache, ou les deux, pour déceler les modifications. Il devient également dépendant d'une instance distincte de la classe 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)

Paramètres

filenames
String[]

Tableau de chemins d'accès (vers des fichiers ou des répertoires) dont dépend l'objet mis en cache. Lorsque l'une de ces ressources change, l'objet mis en cache devient obsolète et est supprimé du cache.

cachekeys
String[]

Tableau de clés de cache que le nouvel objet surveille pour déceler les modifications. Lorsque l'une de ces clés de cache change, l'objet mis en cache associé à cet objet de dépendance devient obsolète et est supprimé du cache.

dependency
CacheDependency

Une autre instance de la classe CacheDependency dont cette instance dépend.

Exemples

L’exemple de code suivant crée une CreateDependency méthode. Lorsque cette méthode est appelée, elle utilise la Cache.Item[] propriété pour ajouter un élément au cache avec un key paramètre et key1 une valeur de Value 1. Un tableau de chaînes, dependencyKeyest ensuite créé avec la valeur de key1 également. Le CacheDependency.CacheDependency constructeur est utilisé pour créer un CacheDependency objet, dep1qui passe dependencyKey en tant qu’argument de paramètre. Un deuxième CacheDependency objet, dep2est créé à l’aide de ce constructeur, avec dep1 passé comme troisième argument de paramètre. Cette deuxième dépendance dépend du premier. La Cache.Insert méthode est appelée suivante, en utilisant le deuxième CacheDependency objet comme paramètre. Si la première dépendance change de quelque manière que ce soit, l’élément mis en cache est invalidé.

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

Remarques

En outre, si l’un des répertoires ou fichiers spécifiés dans le filenames paramètre est introuvable dans le système de fichiers, il est traité comme manquant. Si un répertoire ou un fichier est manquant lorsque l’objet avec la dépendance est ajouté à celui-ci Cache, l’objet mis en cache est supprimé du Cache moment où ce répertoire ou fichier est créé.

Par exemple, supposons que vous ajoutez un objet à l’aide Cache d’une dépendance sur le chemin d’accès de fichier suivant : c:\stocks\xyz.dat. Si ce fichier est introuvable lors de la création de l’objet CacheDependency , mais qu’il est créé ultérieurement, l’objet mis en cache est supprimé lors de la création du fichier xyz.dat.

Toutefois, la cachekeys dépendance ne fonctionne pas de la même façon. Si au moins une valeur dans le cachekeys paramètre n’existe pas au moment d’une insertion, l’insertion échoue. Notez qu’il n’existe aucune exception levée pour ce scénario.

S’applique à

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

Initialise une nouvelle instance de la classe CacheDependency qui surveille un tableau de chemins d'accès (vers des fichiers ou des répertoires), un tableau de clés de cache, ou les deux, pour déceler les modifications. Il devient également dépendant d'une autre instance de la classe CacheDependency et de l'heure à laquelle la surveillance des modifications commence.

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)

Paramètres

filenames
String[]

Tableau de chemins d'accès (vers des fichiers ou des répertoires) dont dépend l'objet mis en cache. Lorsque l'une de ces ressources change, l'objet mis en cache devient obsolète et est supprimé du cache.

cachekeys
String[]

Tableau de clés de cache que le nouvel objet surveille pour déceler les modifications. Lorsque l'une de ces clés de cache change, l'objet mis en cache associé à cet objet de dépendance devient obsolète et est supprimé du cache.

dependency
CacheDependency

Une autre instance de la classe CacheDependency dont cette instance dépend.

start
DateTime

Heure par rapport à laquelle vérifier la date de dernière modification des objets dans les tableaux et l'objet CacheDependency.

Exemples

L’exemple de code suivant montre une CreateDependency méthode. Lorsque cette méthode est appelée, elle crée un DateTime objet et la Cache.Item[] propriété est utilisée pour ajouter un élément au cache avec un paramètre de clé et key1 une valeur de Value 1. Un tableau de chaînes, dependencyKeyest ensuite créé avec la valeur à son premier index (et uniquement) défini sur la valeur de key1 . Le CacheDependency.CacheDependency constructeur est ensuite utilisé pour créer un CacheDependency objet, dep1qui passe dependencyKey en tant qu’argument de paramètre. Un deuxième CacheDependency objet, dep2est ensuite créé à l’aide de ce constructeur, avec dep1 et l’objet DateTime passé en tant qu’arguments de paramètre. Cette deuxième dépendance dépend du premier, et la surveillance des dépendances commence 10 secondes après l’appel de la CreateDependency méthode. La Cache.Insert méthode est appelée suivante, en utilisant le deuxième CacheDependency objet comme paramètre. Si la première dépendance change de quelque manière que ce soit, l’élément mis en cache est invalidé.

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

Remarques

En outre, si l’un des répertoires ou fichiers spécifiés dans le filenames paramètre est introuvable dans le système de fichiers, il est traité comme manquant. Si un répertoire ou un fichier est manquant lorsque l’objet avec la dépendance est ajouté à celui-ci Cache, l’objet mis en cache est supprimé du Cache moment où ce répertoire ou fichier est créé.

Par exemple, supposons que vous ajoutez un objet à l’aide Cache d’une dépendance sur le chemin d’accès de fichier suivant : c:\stocks\xyz.dat. Si ce fichier est introuvable lors de la création de l’objet CacheDependency , mais qu’il est créé ultérieurement, l’objet mis en cache est supprimé lors de la création du fichier xyz.dat.

Toutefois, la cachekeys dépendance ne fonctionne pas de la même façon. Si au moins une valeur dans le cachekeys paramètre n’existe pas au moment d’une insertion, l’insertion échoue. Notez qu’il n’existe aucune exception levée pour ce scénario.

Notes

Le suivi des modifications commence immédiatement et n’est pas directement basé sur le start paramètre. Utilisez le start paramètre pour passer une date et une heure dans le passé par rapport à laquelle vous souhaitez vérifier la date de dernière modification de l’un des objets passés dans le filenames, cachekeysou dependency les paramètres. Si la date de dernière modification de l’un de ces objets est postérieure à la date et à l’heure passées dans le start paramètre, l’élément mis en cache est supprimé du Cache.

Voir aussi

S’applique à