मैं अपने MVC अनुप्रयोग में OutputCache
विशेषता का उपयोग करने की कोशिश कर रहा हूँ काम करने के लिए प्रकट नहीं होता है और यह जब मैं OutputCacheLocation.Client
का उपयोग काम करने के लिए प्रकट नहीं होता है:OutputCache स्थान = क्लाइंट
public class HomeController : Controller
{
[OutputCache(Duration=15, Location=OutputCacheLocation.Client)]
public ActionResult Client()
{
ViewBag.Message = "The current time is " + DateTime.Now.ToString("hh:mm:ss");
return View();
}
[OutputCache(Duration=15, Location=OutputCacheLocation.Any)]
public ActionResult Any()
{
ViewBag.Message = "The current time is " + DateTime.Now.ToString("hh:mm:ss");
return View();
}
}
पहले एक कैश नहीं है । मैंने हर सेकेंड पेज को मारा और यह समय बदल गया। दूसरा काम करता है। यह केवल हर 15 सेकंड में समय बदलता है। क्या मैं कुछ छोड़ रहा हूं? मैं IE8 का उपयोग करके और विजुअल स्टूडियो में अंतर्निहित विकास सर्वर का उपयोग कर इसे डिबग कर रहा हूं।
"क्लाइंट" का शाब्दिक अर्थ क्लाइंट है, यानी आईई। तो यदि आप पृष्ठ को मैन्युअल रूप से हिट करते हैं, तो आप नियमों से नहीं खेल रहे हैं; [क्लाइंट-साइड कैशिंग का अर्थ है कि आपको पृष्ठ को भी हिट नहीं करना है।] (http://msdn.microsoft.com/en-us/library/system.web.ui.outputcachelocation.aspx) – bzlm
@bzlm क्या करें तुम्हारा मतलब है? यदि मैं किसी अन्य पृष्ठ पर/home/क्लाइंट पर वापस जाता हूं, और वापस/home/क्लाइंट पर जाता हूं। क्या मुझे कैश किए गए पृष्ठ पर नहीं जाना चाहिए? (जब तक मैं समय सीमा के भीतर हूं?) – Joe
@bzlm प्रतीक्षा करें, मैं देखता हूं। F5 को मारना कैश को अमान्य करता है, उसी पृष्ठ पर/सेविगेट करने के लिए नेविगेट करता है। मुझे यह नहीं पता था। आपको इसे जवाब के रूप में पोस्ट करना चाहिए। मैं पूरे इंटरनेट पर खोज कर रहा हूं और उस tidbit – Joe