2009-02-10 13 views
7

Bu yüzden ASP.NET kullanan bir proje üzerinde çalışıyorum. Önbellek ["key"] 'i aramaya çalışıyorum ama derleyici, System.Web.Caching.Cache'nin "bu noktada geçerli olan" şeklinden şikayet ediyor.Sorun ASP.NET'te System.Web.Caching.Cache sınıfını kullanma

Önbellek obj = new Cache(); obj daima boştur.

HttpContext.Current.Cache dosyasına erişebilirim - ancak bu, Insert() yönteminde bir mutlak son kullanma ve sürenin dolmasına izin vermeme izin vermez.

Birisi bana yardımcı olabilir mi?

cevap

14

Eklemeyi HttpRuntime.Cache'de çağıran mutlak veya sürgülü son kullanım olmalıdır. Birkaç aşırı yüklenme var. Ör:

HttpRuntime.Cache.Insert("EXAMPLE_KEY", 
         exampleItem, 
         Nothing,       
         DateTime.Now.AddHours(1), 
         System.Web.Caching.Cache.NoSlidingExpiration); 

aynı kodu da HttpContext.Current.Cache birlikte çalışmalıdır.

+0

Mutlak bir son kullanma tarihi ve sürgülü bir son kullanma tarihi var mı? Biri ya da diğeri gibi görünüyor. – Ash

+0

Bunun nasıl çalışacağından emin değilim, iki son kullanma şekli kesinlikle bir noktada birbiriyle çelişir. Bu nedenle izin verilmez. Bir değer desteklenmeli ve diğeri System.Web.Caching.Cache.NoSlidingExpiration ve System.Web.Caching.Cache.NoAbsoluteExpiration olmalıdır. –

0

PCache sınıfını PokeIn kitaplığı altında denemenizi öneririm. Bu kütüphanenin ÜCRETSİZ sürümünü kullansanız bile, bu sınıfla ilgili bir sınırlama yoktur. ASP.NET Önbellek sınıfıyla karşılaştırıldığında çok daha fazla işleve sahiptir ve bu sorunlarla uğraşmak zorunda değilsiniz. Web sitesinde basit bir örnek proje var.

İlgili konular