में आंशिक दृश्य पर कैशिंग अक्षम करें मुझे आंशिक दृश्य कैश होने पर कोई समस्या नहीं है जब यह नहीं होना चाहिए। यह आंशिक दृश्य किसी पृष्ठ पर लॉगऑन/लॉगऑफ प्रदर्शित करने के लिए उपयोग किया जाता है। यह है, जोएमवीसी 3
@if(Request.IsAuthenticated) {
<a href="@Url.Action("LogOff", "Account", new { area = "" })">Log Off</a>
}
else {
<a href="@Url.Action("LogOn", "Account", new { area = "" })">Log On</a>
}
यह आंशिक देखें मेरी MVC3 आवेदन में सभी पृष्ठों के साथ से कहा जाता है प्रदर्शित करने के लिए लिंक यह पता लगाने के लिए नीचे सरल कोड का उपयोग करता
@Html.Partial("_HeaderView")
उपयोग करते हुए मेरे नियंत्रकों से अधिकांश में, मेरे पास है आउटपुट कैश परिभाषित किया गया है, इसलिए मैं अपनी सामग्री को कैशिंग का लाभ उठा सकता हूं।
[OutputCache(Duration = 86400, VaryByParam = "*")]
अब मेरी समस्या यह है कि जब मैं आंशिक दृश्य नहीं चाहता हूं तो पूरा पृष्ठ कैश किया जा रहा है। यह गलत व्यवहार कर रहा है, जहां कभी-कभी लॉगऑफ प्रदर्शित होता है, भले ही उपयोगकर्ता लॉग इन नहीं हो। आदि। प्रश्न में आंशिक दृश्य को छोड़कर, सभी सामग्री को कैश करने का कोई तरीका है?
निक, क्षमा करें, यहां टिप्पणी को जोड़ना पड़ा। वैसे भी, यह काम करता है जब मैं नॉस्टोर को हटाता हूं और अवधि को 1 में बदल देता हूं। उपयोगकर्ता द्वारा लॉग इन करने पर एकमात्र समस्या तब होती है, उन्हें होम पेज पर ले जाया जाता है लेकिन मुझे इसे प्रभावी होने के लिए स्पष्ट रूप से रीफ्रेश करना होगा (लॉगआउट दिखाने के लिए लॉगऑन के बजाय)। – SimpleUser