ファイルまたはディレクトリへのパスの配列、キャッシュ キーの配列、またはその両方が変更されたかどうかを監視する、CacheDependency クラスの新しいインスタンスを初期化します。
名前空間: System.Web.Caching
アセンブリ: System.Web (system.web.dll 内)
構文
'宣言
Public Sub New ( _
filenames As String(), _
cachekeys As String(), _
start As DateTime _
)
'使用
Dim filenames As String()
Dim cachekeys As String()
Dim start As DateTime
Dim instance As New CacheDependency(filenames, cachekeys, start)
public CacheDependency (
string[] filenames,
string[] cachekeys,
DateTime start
)
public:
CacheDependency (
array<String^>^ filenames,
array<String^>^ cachekeys,
DateTime start
)
public CacheDependency (
String[] filenames,
String[] cachekeys,
DateTime start
)
public function CacheDependency (
filenames : String[],
cachekeys : String[],
start : DateTime
)
適用できません。
パラメータ
- filenames
キャッシュされているオブジェクトが依存しているファイルまたはディレクトリへのパスの配列。これらのリソースのいずれかが変更されると、キャッシュされているオブジェクトは無効になり、キャッシュから削除されます。
- cachekeys
新しいオブジェクトが変更されているかどうかを監視する対象のキャッシュ キーの配列。これらのキャッシュ キーのいずれかが変更されると、この依存関係オブジェクトに関連付けられているキャッシュされたオブジェクトは無効になり、キャッシュから削除されます。
- start
filenames 配列および cachekeys 配列に渡されたオブジェクトの最終更新日時を突き合わせて確認する日時。
解説
また、filenames パラメータで指定したディレクトリまたはファイルがファイル システム内に見つからない場合、それらは存在しないものと見なされます。依存関係を持つオブジェクトを Cache に追加するときに、指定されたディレクトリまたはファイルがない場合は、キャッシュされているオブジェクトは、ディレクトリまたはファイルの作成時に Cache から削除されます。
たとえば、c:\stocks\xyz.dat というファイル パスへの依存関係を持つオブジェクトを Cache に追加するとします。CacheDependency オブジェクトが作成されるときに xyz.dat ファイルが見つからない場合でも、後でそのファイルが作成されるとキャッシュされたオブジェクトは削除されます。
![]() |
---|
変更の追跡がすぐに開始されます。この追跡は、start パラメータに直接基づくものではありません。start パラメータを使用して過去の日時を渡し、filenames パラメータまたは cachekeys パラメータで渡されたオブジェクトの最終更新日時をこれと突き合わせて確認します。いずれかのオブジェクトの最終更新日時が start パラメータで渡された日時よりも後の場合、キャッシュされた項目は Cache から削除されます。 |
使用例
CreateDependency
メソッドを作成するコード例を次に示します。このメソッドを呼び出すと、DateTime オブジェクトが作成され、Cache.Item プロパティを使用して項目がキャッシュに追加されます。このとき、key パラメータには key1
が、値には Value 1
が使用されます。次に、文字列 dependencyKey
の配列が値 key1
でも作成されます。この CacheDependency コンストラクタは次に、dependencyKey
と DateTime オブジェクトをパラメータ引数として渡す CacheDependency オブジェクトをインスタンス化します。次に、CacheDependency オブジェクトがパラメータとして使用され、System.Web.Caching.Cache.Insert メソッドが呼び出されます。これによって、key1
キーに依存する Insert メソッドを使用してオブジェクトがキャッシュに追加されます。
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
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();
}
プラットフォーム
Windows 98,Windows Server 2000 SP4,Windows CE,Windows Millennium Edition,Windows Mobile for Pocket PC,Windows Mobile for Smartphone,Windows Server 2003,Windows XP Media Center Edition,Windows XP Professional x64 Edition,Windows XP SP2,Windows XP Starter Edition
Microsoft .NET Framework 3.0 は Windows Vista,Microsoft Windows XP SP2,および Windows Server 2003 SP1 でサポートされています。
バージョン情報
.NET Framework
サポート対象 : 3.0,2.0,1.1,1.0
参照
関連項目
CacheDependency クラス
CacheDependency メンバ
System.Web.Caching 名前空間
Cache
Insert