首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在asp.net中使用System.Web.Caching?

如何在asp.net中使用System.Web.Caching?
EN

Stack Overflow用户
提问于 2013-09-27 23:07:53
回答 1查看 14.2K关注 0票数 17

我有一个看起来像这样的类:

代码语言:javascript
复制
using System.Collections.Generic;
using System.Web.Caching;

public static class MyCache
{
    private static string cacheKey = "mykey";

    public static Dictionary<string, bool> GetCacheValue(bool bypassCache)
    {
        var settings = Cache[cacheKey] as Dictionary<string, bool>; // error on this line

        // ...etc...

        return settings
    }
}

我遇到的问题是这个不能编译。编译器说Cache不能像我这样使用。下面是要传达的信息:

代码语言:javascript
复制
'System.Web.Caching.Cache' is a 'type' but is used like a 'variable'

这让我很困惑。我用谷歌搜索了ASP.NET缓存API,发现了许多以这种方式使用Cache的示例。下面是其中的一个例子:

代码语言:javascript
复制
// http://www.4guysfromrolla.com/articles/100902-1.aspx
value = Cache("key")

      - or -

value = Cache.Get("key")

当我尝试使用Cache.Get()时,我得到另一个错误,告诉我它不是一个静态方法。

显然,我需要初始化Cache的一个实例。这是正确的API使用方法吗?一个后续问题是,缓存的信息是否会跨实例持续存在?

谢谢你的帮助。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-09-27 23:14:10

System.Web.Caching.Cache是一个类-您可以看到人们使用一个名为Cache的属性,该属性是System.Web.Caching.Cache的一个实例。如果在为您提供Cache属性的类外部使用它,请使用System.Web.HttpRuntime.Cache访问它

代码语言:javascript
复制
var settings = System.Web.HttpRuntime.Cache[cacheKey] as Dictionary<string, bool>;
票数 23
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19054137

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档