如何在asp.net mvc应用程序中缓存查询结果

时间:2014-06-11 14:23:11

标签: c# asp.net asp.net-mvc caching

我的控制器的方法使用相同的查询结果来返回各种结果(Jsonresult,actionresult) 有没有办法将结果缓存在内存中,以便所有控制器方法只有一次数据库访问,因此方法不是执行查询而是使用缓存中的结果

我要缓存的变量是var x =来自db.BIOBillPh()中的cus

    public ActionResult BillPhp(string CodePays)
    {
        var x = from cus in db.BIOBillPh( )

                select cus;
        return PartialView(x);

    }


    public JsonResult PaysBU(string  Pays)
    {


        var x = from cus in db.BIOBillPh()
                select cus;
        return Json(x, JsonRequestBehavior.AllowGet);
    }

1 个答案:

答案 0 :(得分:1)

控制器实例是在每次调用时创建的,所以不是真的。您可以在控制器中创建一个静态临时对象,该对象在刷新db调用之前会有一些生命周期。这是一个以高频率呼叫的动作吗?如果有任何减少的开销可能不值得花时间,那么边际效应可能不大。