C# 缓存在生产环境中不起作用

C# 缓存在生产环境中不起作用,c#,.net,asp.net-mvc,caching,C#,.net,Asp.net Mvc,Caching,我使用System.Web.Caching中的Cache来缓存数据库中的一些数据。当我从visualstudio在本地机器上运行应用程序时,它工作正常 但是,当我在IIS上的生产环境中运行它时,我在这一行得到了Null指针异常: cache.Insert("Postnumbers", postnumbers, dependency, DateTime.Now.AddDays(7), Cache.NoSlidingExpiration, Cac

我使用
System.Web.Caching
中的
Cache
来缓存数据库中的一些数据。当我从
visualstudio
在本地机器上运行应用程序时,它工作正常

但是,当我在
IIS
上的生产环境中运行它时,我在这一行得到了
Null指针异常

cache.Insert("Postnumbers", postnumbers, dependency,
             DateTime.Now.AddDays(7), Cache.NoSlidingExpiration, 
             CacheItemPriority.Default, PostnumberRemovedCallback);
我检查了
cache
postnumbers
dependency
,它们不为空。有人知道是什么导致了这个问题吗

堆栈跟踪:

[NullReferenceException: Object reference not set to an instance of an object.]
   Solvent.Model.Persistance.General.Entities.GeneralData.LoadPostnumbers() in C:\Solvent\Solvent\Solvent.Model\Persistance\General\Entities\GeneralData.cs:39
   Solvent.Model.SolventInitializer.InitializeCache() in C:\Solvent\Solvent\Solvent.Model\Context\SolventInitializer.cs:153
   Solvent.Model.SolventInitializer.Initialize() in C:\Solvent\Solvent\Solvent.Model\Context\SolventInitializer.cs:105
   Solvent.MvcApplication.Application_Start() in C:\Solvent\Solvent\Solvent\Global.asax.cs:42

我解决了。我替换了
var cache=new Cahce();cache.Insert()
HttpRuntime.cache.Insert()

但我仍然不知道为什么first way可以在本地使用而不能在生产中使用。

显示完整的堆栈trace@FildorCache、PostNumber和dependency都不是空的,这是我写的。@haim770我只得到这个:[NullReferenceException:对象引用未设置为对象的实例。]错误消息中没有更多信息。@Aleksa啊,覆盖了缓存。。。抱歉。@Aleksa在Blahdiblubb的第X行中没有“…号…”?