gpt4 book ai didi

asp.net-mvc-3 - 在客户端上缓存/查找 MVC 部分 View 的模式

转载 作者:行者123 更新时间:2023-12-01 04:59:15 26 4
gpt4 key购买 nike

这是我的场景。我正在调用一个指向返回部分 View 的 Controller 方法的 url:

Controller 方法:

public ActionResult UserProfile() { return View("UserProfile"); }

Ajax请求获取 View :

$.get('/Home/UserProfile', function (data) { $('.content').html(data); });

我想缓存我的“UserProfile” View ,以便每次用户单击它时,都不必返回服务器再次从 Controller 获取 View 。

我还希望能够在从服务器获取 View 之前确定 View 是否已缓存在客户端上,如果有,则将其从缓存中取出并简单地将其注入(inject)到我的布局上的 div 中。

有人做过这样的事吗?

最佳答案

您可以使用[OutputCache]属性。它允许您指定要缓存 View 的持续时间以及缓存的位置。例如,假设您想在客户端浏览器上缓存 Controller 操作的结果 30 秒:

[OutputCache(Duration = 30, Location = OutputCacheLocation.Client)]
public ActionResult UserProfile()
{
return PartialView();
}

现在您可以触发许多 AJAX 请求,但 30 秒内只有一个请求会发送到服务器:

window.setInterval(function () {
$.get('/Home/UserProfile', function (data) {
$('.content').html(data);
});
}, 4000);

关于asp.net-mvc-3 - 在客户端上缓存/查找 MVC 部分 View 的模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11694453/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com