C# 如何在asp.net mvc 4中缓存服务器上的数据?

C# 如何在asp.net mvc 4中缓存服务器上的数据?,c#,asp.net,sql-server,asp.net-mvc-4,caching,C#,Asp.net,Sql Server,Asp.net Mvc 4,Caching,我正在开发mvc4 web应用程序。我想在服务器端缓存一些数据库查询结果和视图。我曾经- HttpRuntime.Cache.Insert() 但它在客户端缓存数据。请提供帮助。我正在使用MemoryCache存储查询结果,目前运行良好。 下面是我用来实现它的几个链接。 - - 当我现在读到它们时,我发现它们不太清楚,所以也许有一个更好的链接我在某处丢失了。 下面是我的代码示例,我希望它足够清晰,以便您了解它是如何工作的 public static class AgencyCacheMana

我正在开发mvc4 web应用程序。我想在服务器端缓存一些数据库查询结果和视图。我曾经-

HttpRuntime.Cache.Insert()

但它在客户端缓存数据。请提供帮助。

我正在使用MemoryCache存储查询结果,目前运行良好。
下面是我用来实现它的几个链接。
-
-

当我现在读到它们时,我发现它们不太清楚,所以也许有一个更好的链接我在某处丢失了。
下面是我的代码示例,我希望它足够清晰,以便您了解它是如何工作的

public static class AgencyCacheManager
{
    private static MemoryCache _cache = MemoryCache.Default;

    public static List<RefAgency> ListAgency
    {
        get
        {
            if (!_cache.Contains("ListAgency"))
                RefreshListAgency();
            return _cache.Get("ListAgency") as List<Agency>;
        }
    }

    public static void RefreshListAgency()
    {
        var listAgency = GetAllComplete();

        CacheItemPolicy cacheItemPolicy = new CacheItemPolicy();
        cacheItemPolicy.AbsoluteExpiration = DateTime.Now.AddDays(1);

        _cache.Add("ListAgency", listAgency, cacheItemPolicy);
    }
}

好的,简单的,解释。谢谢
public Agency FindBy(string agencyId)
{
    return AgencyCacheManager.ListAgency.SingleOrDefault(x => x.AgencyPartnerCode == agencyId);
}