我想缓存LINq调用的存储过程db.BIOGetETLJobs()
的结果5分钟,然后在其他控制器方法中使用它。
如何缓存结果?
public class JobsETLController : Controller
{
private ETL_REP_MAUIEntities db = new ETL_REP_MAUIEntities();
public ObjectResult<BIOGetETLJobs_Result> ETLJobs;
public JobsETLController()
{
ETLJobs =db.BIOGetETLJobs();
}
答案 0 :(得分:-1)
为了在所有浏览器会话中缓存结果,而不是在首先查询ETL作业的同一SQL Server上,您将需要在运行Web的同一台PC上运行的Windows服务可以将数据保存在内存中的服务器。
WCF是与服务进行通信的不错选择。
一些可以帮助您入门的链接:
How to Host a WCF Service in a Managed Windows Service?
http://msdn.microsoft.com/en-us/library/ms733069(v=vs.110).aspx