Tôi cố gắng để sử dụng thuộc tính OutputCache
trong ứng dụng MVC của tôi và nó không xuất hiện để làm việc khi tôi sử dụng OutputCacheLocation.Client
:OutputCache Location = Khách hàng không xuất hiện để làm việc
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();
}
}
Người đầu tiên không nhớ cache . Tôi nhấn trang mỗi giây và nó thay đổi thời gian. Cái thứ hai hoạt động. Nó chỉ thay đổi thời gian mỗi 15 giây. Có điều gì tôi đang thiếu? Tôi đang gỡ lỗi này bằng cách sử dụng IE8 và được xây dựng trong máy chủ phát triển trong Visual Studio.
"Khách hàng" nghĩa đen là khách hàng, tức là IE. Vì vậy, nếu bạn nhấn trang theo cách thủ công, bạn không chơi theo các quy tắc; [caching phía máy khách nghĩa là bạn thậm chí không phải truy cập trang.] (http://msdn.microsoft.com/en-us/library/system.web.ui.outputcachelocation.aspx) – bzlm
@bzlm những gì làm ý bạn là? Nếu tôi điều hướng đến/home/client sau đó đến một trang khác và quay lại/home/client. Tôi có nên phục vụ trang được lưu trong bộ nhớ cache không? (miễn là tôi đang ở trong khung thời gian?) – Joe
@bzlm chờ đợi, tôi hiểu. nhấn F5 làm mất hiệu lực bộ nhớ cache, điều hướng từ/đến phục vụ cùng một trang. Tôi không biết điều đó. bạn nên đăng câu trả lời đó. Tôi đã được tìm kiếm trên tất cả các internet và không thể tìm thấy rằng tidbit – Joe