如何正确缓存MVC中的视图数据?

时间:2013-10-28 07:11:04

标签: c# asp.net-mvc caching

  [OutputCache(Duration=100)]
        public ViewDataDictionary IndexCache()
        {
            ViewDataDictionary dic = new ViewDataDictionary();

      // here I add the data to dic and MVC cached it.

            return dic;
        }
 public ActionResult Index(string param1)
        {
            var x = IndexCache();

            foreach(var y in x)
            {
                ViewData.Add(y);
            }

            return PartialView("/home/index.cshtml");
        }

此实现是否是缓存viewdata的正确方法?

如果没有,请指导我如何得到它。

1 个答案:

答案 0 :(得分:0)

阅读this Tutorial

OutputCache属性放在返回视图数据的方法上方,例如Index,无论Index将返回什么,都应该缓存,具体取决于属性的设置。

如果您只想缓存多个视图或控制器中使用的数据,请使用System.Web.Caching进行进程/内存缓存!