C#缓存从配置过期

C#缓存从配置过期,c#,asp.net,caching,C#,Asp.net,Caching,我有几个应用程序使用相同的代码 我希望一些应用程序将保存缓存,以便在到期时使用。 还有一个错误是,ill调用insert cache,时间将从配置时间开始 叫这个 HttpContext.Current.Cache.Insert 和值将从配置自动 我知道我可以使用appsetting,但有更好的方法吗 <add key="timeTolive" value="5"/> 如果我正确理解了您的问题,那么在全局中的应用程序_Start中,您可以尽快使用以下内容: Context.Cach

我有几个应用程序使用相同的代码 我希望一些应用程序将保存缓存,以便在到期时使用。 还有一个错误是,ill调用insert cache,时间将从配置时间开始 叫这个 HttpContext.Current.Cache.Insert 和值将从配置自动

我知道我可以使用appsetting,但有更好的方法吗

<add key="timeTolive" value="5"/>

如果我正确理解了您的问题,那么在
全局中的
应用程序_Start
中,您可以尽快使用以下内容:

Context.Cache.Insert("tome", ConfigurationManager.AppSettings["tome"], null, Cache.NoAbsoluteExpiration, Cache.NoSlidingExpiration, CacheItemPriority.NotRemovable, null);

它至少部分取决于您使用的缓存。例如,MemoryCache对象将允许您设置项目的默认生存时间。这不是automagic,但您可以轻松设置它

如果这不是您的选项,则可以在将对象放入缓存时自己显式设置缓存超时。将其封装在自己的类中以便重用,这样您就可以滚动了


而且,如果您想要一个默认时间,但偶尔会有一个对象在缓存中花费更多或更少的时间,您可以将这两个概念混合使用。

我添加了一个错误,即假设时间不是时间,我想在配置中设置缓存的时间,但我想知道是否有更好的方法来设置缓存的默认时间