【发布时间】:2013-01-26 12:47:25
【问题描述】:
我正在使用带有 WEB API 的 ASP.NET MVC 4
我有以下操作,在下面显示的操作中,我的服务方法对 DoMagic() 方法进行 db 调用并返回一个整数值,然后我在每个页面上使用该值,此操作使用 ajax 调用来调用。
以下是我的 WEB API 操作:
[OutputCache(Duration = 86400, VaryByParam = "none")]
[ActionName("GetMyMagicNumber")]
public int GetMyMagicNumber()
{
if (WebSecurity.IsAuthenticated)
{
var revenue = _magicService.DoMagic();
return revenue;
}
return 0;
}
我的问题:我曾尝试使用[OutputCache(Duration = 86400, VaryByParam = "none")],但我只是在第一次调用 db 时以及对该操作的下一次后续请求将返回缓存值,但这并没有发生。
再次进行 db 调用,db 调用需要时间我如何使其正常工作?
【问题讨论】:
-
这是 ASP.net Web Api,而不是 MVC Web Api。它们是两种不同的技术。
-
我假设您特别想要服务器端缓存?
标签: c# asp.net-web-api http-caching