我建立基本上将被用来调用外部REST/JSON Web服务小 Web应用程序,通过一些参数和将这个结果返回给表中的用户。如何缓存在C#中的Web服务结果/ MVC的,而不是调用Web服务的所有时间
我知道从外部服务中的数据不会经常变化(可能每天一次),我想,以防止调用Web服务很多次了相同的查询。
什么是实施某种缓存的好方法?
在我放在一起的东西的那一刻(哪种类型的作品,但我不认为这是正确的方式):
用户输入搜索参数
尝试{LINQ查询到从列表中选择结果}
抓住{调用web服务,其结果填充列表,然后重新运行LINQ查询。如果仍然没有结果,然后再次抛出异常}
我想我会清空列表在一天的末尾,以便每一天,它会重建。
该代码是有点混乱,但似乎工作最的时间 - 有没有更好的办法来实现这一目标?
因此,而不是使用列表我应该使用Cache类,并添加myObject的项目到缓存中“参数1,参数2,参数3”的等密钥? –
Steve
@是的,这就是我过去做过/做过类似事情的方式。 – RobH
感谢罗布 - 我将如何访问Cache对象?类似于:if(System.Web.HttpContext.Current.Cache [“test”] == null){ //从网络服务获取数据} 其他{返回对象} – Steve