asp.net-web-api
कैशिंग
खोज…
टिप्पणियों
कैशिंग भविष्य के अनुरोधों के लिए कहीं न कहीं डेटा संग्रहीत करने की प्रक्रिया है, हमारे मामले में हम डेटा प्राप्त करने के लिए डेटाबेस में अवांछित हिट से बच सकते हैं यदि हम डेटा को कहीं और कैश करते हैं, तो इस तरह से हम यह सुनिश्चित कर सकते हैं कि डेटा को तेज तरीके से परोसा जाता है। ।
System.Runtime.Caching (MemoryCache)
नामस्थान सिस्टम को आयात करें ।untime.Caching (सुनिश्चित करें कि आपने System.Runtime.Caching DLL को अपने निजी संदर्भ में जोड़ा है)।
MemoryCache वर्ग का एक उदाहरण बनाएँ।
MemoryCache memCache = MemoryCache.Default;
MemoryCache में मान जोड़ें
public IQueryable<tblTag> GettblTags()
{
var ca = db.tblTags;
memCache.Add("tag", ca, DateTimeOffset.UtcNow.AddMinutes(5));
return db.tblTags;
}
यहां "टैग" मेरी कुंजी है और "सीए" मेरे मूल्य हैं और DateTimeOffset.UtcNow.AddMinutes (5) अब से पांच मिनट के लिए कैश सेट करने के लिए है।
MemoryCache से मान प्राप्त करें
var res = memCache.Get("tag");
if (res != null)
{
return res;
}
else {
var ca = db.tblTags;
memCache.Add("tag", ca, DateTimeOffset.UtcNow.AddMinutes(5));
return db.tblTags;
}
हमें वैरिएबल रेस में कैश मान मिलेगा, याद रखें यह मान केवल पाँच मिनट के लिए होगा। आप हमेशा जरूरत के अनुसार इसे बदल सकते हैं। यदि मान शून्य नहीं है, तो हम इसे वापस करेंगे और हेरफेर करेंगे और यदि यह शून्य है तो हम आगे बढ़ेंगे और डेटाबेस से डेटा प्राप्त करेंगे और मूल्य को कैश में जोड़ देंगे।
MemoryCache से मान निकालें
if (memCache.Contains("tag"))
{
memCache.Remove("tag");
}