非静态字段,方法或属性所需的对象引用

Gur*_*epS 5 c#

我想使用Caching.Cache(...)方法,如下所示:

Cache.Insert("Interview Questions", datatable, sqlcachedep)
Run Code Online (Sandbox Code Playgroud)

要么

System.Web.Caching.Cache.Insert("Reading List", datatable, sqlcachedep);
Run Code Online (Sandbox Code Playgroud)

变量没有问题,但在任何一种情况下都会收到此错误消息:

错误1 - 非静态字段,方法或属性'System.Web.Caching.Cache.Insert(string,object,System.Web.Caching.CacheDependency)'需要对象引用

我怎样才能解决这个问题?

谢谢

Meh*_*ari 16

这是正确的说法.你应该尝试类似的东西:

HttpContext.Current.Cache.Insert(...);
Run Code Online (Sandbox Code Playgroud)

Cache.Insert是一个非静态方法(静态方法在文档中的方法图标附近用"S"表示.)您需要一个实例来调用该Insert方法.HttpContext.Current.Cache返回Cache与当前应用程序关联的对象.


wom*_*omp 1

你需要做

Page.Cache.Insert()
Run Code Online (Sandbox Code Playgroud)

(我假设您正在谈论 ASP.Net)。您将 Cache 作为类来调用,而不是作为它的实例。