小编典典

如何在 MVC 应用程序中缓存数据

all

我已经阅读了很多关于 MVC 应用程序中的页面缓存和部分页面缓存的信息。但是,我想知道您将如何缓存数据。

在我的场景中,我将使用 LINQ to Entities(实体框架)。在第一次调用
GetNames(或任何方法)时,我想从数据库中获取数据。我想将结果保存在缓存中,并在第二次调用时使用缓存版本(如果存在)。

任何人都可以举例说明这将如何工作,应该在哪里实施(模型?)以及它是否可以工作。

我已经在传统的 ASP.NET 应用程序中看到过这种情况,通常用于非常静态的数据。


阅读 91

收藏
2022-05-19

共1个答案

小编典典

引用System.Web模型中的 dll 并使用System.Web.Caching.Cache

    public string[] GetNames()
    {
      string[] names = Cache["names"] as string[];
      if(names == null) //not in cache
      {
        names = DB.GetNames();
        Cache["names"] = names;
      }
      return names;
    }

有点简化,但我想这会奏效。这不是 MVC 特定的,我一直使用这种方法来缓存数据。

2022-05-19