13

HttpRunTime キャッシュにキャッシュされたデータを表示するためのツールはありますか?
データを HttpRuntime Cache にキャッシュする Asp.Net アプリケーションがあります。指定されたデフォルト値は 60 秒でしたが、後で 5 分に変更されました。しかし、キャッシュされたデータは 5 分前に更新されているように感じます。下で何が起こっているのかわかりません。

利用可能なツールはありますか、または HttpRunTime キャッシュにキャッシュされたデータを確認する方法はありますか....有効期限がありますか?
次のコードは、アイテムをキャッシュに追加するために使用しています。

    public static void Add(string pName, object pValue)
    {
    int cacheExpiry= int.TryParse(System.Configuration.ConfigurationManager.AppSettings["CacheExpirationInSec"], out cacheExpiry)?cacheExpiry:60;
    System.Web.HttpRuntime.Cache.Add(pName, pValue, null, DateTime.Now.AddSeconds(cacheExpiry), TimeSpan.Zero, System.Web.Caching.CacheItemPriority.High, null);
    }


ありがとう。

4

2 に答える 2

7

キャッシュクラスは、 IDictionaryEnumeratorをサポート して、キャッシュ内のすべてのキーと値を列挙します。以下のコードは、キャッシュからすべてのキーを削除する方法の例です。

List<string> keys = new List<string>();

// retrieve application Cache enumerator
IDictionaryEnumerator enumerator = System.Web.HttpRuntime.Cache.GetEnumerator();

// copy all keys that currently exist in Cache
while (enumerator.MoveNext())
{
    keys.Add(enumerator.Key.ToString());
}

// delete every key from cache
for (int i = 0; i < keys.Count; i++)
{
    HttpRuntime.Cache.Remove(keys[i]);
}
于 2013-09-30T12:28:53.187 に答える