प्रसंग: नेट 3.5, सी #
मैं अपने कंसोल आवेदन में कैशिंग तंत्र है करना चाहते हैं।
के बजाय फिर से खोज करने पहिया, मैं System.Web.Caching.Cache
उपयोग करना चाहते हैं (और है कि अंतिम निर्णय है, मैं अन्य कैशिंग ढांचे का उपयोग नहीं कर सकते, मत पूछो क्यों)।
हालांकि, ऐसा लगता है कि System.Web.Caching.Cache
केवल वैध HTTP संदर्भ में चलाना है। मेरे बहुत ही सरल स्निपेट ऐसा दिखता है:मैं कंसोल एप्लिकेशन में System.Web.Caching.Cache का उपयोग कैसे कर सकता हूं?
using System;
using System.Web.Caching;
using System.Web;
Cache c = new Cache();
try
{
c.Insert("a", 123);
}
catch (Exception ex)
{
Console.WriteLine("cannot insert to cache, exception:");
Console.WriteLine(ex);
}
और परिणाम है:
cannot insert to cache, exception: System.NullReferenceException: Object reference not set to an instance of an object. at System.Web.Caching.Cache.Insert(String key, Object value) at MyClass.RunSnippet()
तो जाहिर है, मैंने कुछ गलत यहाँ कर रहा हूँ। कोई विचार?
अद्यतन: +1 सबसे उत्तर देने के लिए, स्थिर विधियों के माध्यम से कैश हो रही सही उपयोग, अर्थात् HttpRuntime.Cache
और HttpContext.Current.Cache
है। आप सभी को धन्यवाद!
"यहाँ देखें" लिंक टूट गया है –
@ Ron- कि एक Stackoverflow बग है। यहां एक ही लिंक के लिए एक TinyUrl है- http://tinyurl.com/ms35eu – RichardOD