使用缓存数据 - 使用Controller操作上的输出缓存缓存另一个操作方法

时间:2012-03-02 06:45:31

标签: asp.net asp.net-mvc-3 outputcache

我是ASP.NET MVC框架的新手,我想达到以下要求。如果有可能,请告诉我。

我在应用程序中有一个主数据,我在一个控制器操作上获得MasterData。

    [HttpPost]
        [OutputCache(Duration=60*60, VaryByParam="", CacheProfile="Books")]
        public ActionResult GetBooks()
        {
}

我想使用主数据缓存作为上一个操作方法的一部分。

 [HttpPost]
    public ActionResult EditBooks()
    {
        return View("_EditBook");
    }

如何在asp.Net mvc中访问缓存数据?

1 个答案:

答案 0 :(得分:1)

OutputCache用于缓存由控制器操作呈现的HTML(或它返回的任何结果),以便下次调用此操作时,不会执行其正文,但会直接返回缓存的数据。您无法访问存储在输出缓存中的缓存数据。这不是输出缓存的目的。

OutputCache属性也可以应用于child actions,以便缓存网页的onmly片段。

另一方面,如果要缓存某些.NET对象(例如,在控制器操作中返回的某种类型的集合),则可以使用MemoryCache