0
次のコードを設定してキャッシュを作成しました。デバッグでは、cache
をウォッチリストに追加し、コードをステップ実行します。しかし、私がcache
のプロパティをチェックすると、PollingInterval(時間に関する何かを見ることができる場所のみ)にDaysが0、分が2として表示されます。私はAbsoluteExpirationとSlidingExpirationの両方でこれを試しました。C#のキャッシュ有効期限の確認/
ObjectCache cache = MemoryCache.Default;
CacheItemPolicy policy = new CacheItemPolicy();
//policy.AbsoluteExpiration = DateTimeOffset.Now.AddHours(24.0);
//policy.AbsoluteExpiration = DateTimeOffset.Now.AddMinutes(30.0);
policy.SlidingExpiration = TimeSpan.FromDays(2.0);
cache.Set("Clients", clients, policy);
私もcache.Set(...)
の代わりに、CacheItemPolicyのための三番目のパラメータとしてDateTimeOffset.Now.AddHours(24.0)
を使用してみました。
ありがとうございました。
[PollingInterval](https://msdn.microsoft.com/en-us/library/system.runtime.caching.memorycache.pollinginterval(v = vs.110).aspx) - _ "キャッシュはメモリ統計を更新します。 " - オブジェクトがキャッシュされる期間ではありません。 – stuartd
キャッシュの有効期限を確認するにはどうすればよいですか? –
[テストを書く](http://stackoverflow.com/questions/3848560/asp-net-4-0-cacheitempolicy-sliding-expiration-incorrect)?それとも、反射があるフィールドを覗いてみようか?なぜそれが正しく設定されているとは思わないのですか? – stuartd