阅后即焚

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

NuGet引用Microsoft.Extensions.Caching.Memory包

引用命名空间

using Microsoft.Extensions.Caching.Memory;
using Microsoft.Extensions.Options;

实例化之后就可以使用.

static void Main(string[] args)
{
  var cache = new MemoryCache(new MemoryCacheOptions());
  //设置静态缓存   cache.Set(
"A", 1);
  if (cache.TryGetValue("User", out int value))
    Console.WriteLine(value);
//设置一秒后过期
  cache.Set(
"B",2,DateTimeOffset.Now.AddMilliseconds(1000).DateTime);
  Console.ReadLine(); }

 

有两点需要注意.

1.取出缓存的时候取出的是实例引用.修改该实例会影响缓存内的实例.

2.在Standard类库中引用Microsoft.Extensions.Caching.Memory包(版本:3.1.1)时,依赖的System.Memory版本为4.5.2.会与其他包或者SDK依赖的System.Memory(4.5.3)产生版本冲突,需要手动修改下.希望版本能快速跟上.

依赖关系(Microsoft.Extensions.Caching.Memory(3.1.1)->Microsoft.Extensions.Options (3.1.1)->Microsoft.Extensions.Primitives (3.1.1)->System.Memory (4.5.2))

posted on 2020-01-27 02:54  阅后即焚  阅读(615)  评论(0编辑  收藏  举报