"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > ASP.NET MVC कार्यों के कैशिंग को कैसे रोकें?

ASP.NET MVC कार्यों के कैशिंग को कैसे रोकें?

2025-04-11 को पोस्ट किया गया
ब्राउज़ करें:267

How Do I Prevent Caching for Specific ASP.NET MVC Actions?

]

ASP.NET MVC का कैशिंग तंत्र काफी प्रदर्शन को बढ़ाता है। हालांकि, परिदृश्य मौजूद हैं जहां विशेष कार्यों के लिए कैशिंग को अक्षम करना ताजा डेटा की पुनर्प्राप्ति की गारंटी के लिए महत्वपूर्ण है। यह मार्गदर्शिका विशेषताओं का उपयोग करके विशिष्ट ASP.NET MVC क्रियाओं में कैशिंग को रोकने के लिए गाइड विवरण विधियाँ।

एक nocache विशेषता बनाना ] नीचे एक उदाहरण है:

सार्वजनिक सील वर्ग nocacheattribute: actionfilteratttribute { सार्वजनिक ओवरराइड शून्य onResultExecuting (resultExecutingContext filterContext) { filtercontext.httpcontext.response.cache.setexpires (dateTime.utcnow.adddays (-1)); filtercontext.httpcontext.response.cache.setvaliduntilexpires (गलत); filtercontext.httpcontext.response.cache.setrevalidation (httpcacherevalidation.allcaches); filtercontext.httpcontext.response.cache.setcacheability (httpcacheability.nocache); filtercontext.httpcontext.response.cache.setnostore (); base.onresultexecuting (filterContext); } } ] वैकल्पिक रूप से, एक आधार नियंत्रक से विरासत में और

[nocache]

के साथ इसे सजाने से सभी विरासत वाले नियंत्रकों में कैशिंग को रोकता है। ] ] $। ajax ({{ कैश: गलत, // ... अन्य अजाक्स सेटिंग्स });

] ] एक मानक ताज़ा (F5) हमेशा नवीनतम जानकारी प्राप्त नहीं कर सकता है यदि ब्राउज़र कैश्ड संस्करण को बरकरार रखता है।
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Method)]
public sealed class NoCacheAttribute : ActionFilterAttribute
{
    public override void OnResultExecuting(ResultExecutingContext filterContext)
    {
        filterContext.HttpContext.Response.Cache.SetExpires(DateTime.UtcNow.AddDays(-1));
        filterContext.HttpContext.Response.Cache.SetValidUntilExpires(false);
        filterContext.HttpContext.Response.Cache.SetRevalidation(HttpCacheRevalidation.AllCaches);
        filterContext.HttpContext.Response.Cache.SetCacheability(HttpCacheability.NoCache);
        filterContext.HttpContext.Response.Cache.SetNoStore();

        base.OnResultExecuting(filterContext);
    }
}

] उपयोगकर्ता अनुभव और अनुप्रयोग तर्क को प्रभावित करने वाले बासी डेटा से बचने के लिए कैशिंग नियंत्रण माहिर है।

नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3