首页 > 解决方案 > Net Core MemoryCache 不会根据请求重置

问题描述

.Net 核心 3.0。我有一个回购 IMemoryCache 被注入的地方。Repo 注册为 Transient。我希望每次请求都清除/重置缓存,但这并没有发生。它保留从上一个请求中插入的数据。如何使 MemoryCache 根据请求重新创建?

public OrganizationRepository(
   IMemoryCache cache)
{
    m_cache = cache;
    // cache still has data in entries for subsequent requests
}

注册:

services.AddTransient<IOrganizationRepository, OrganizationRepository>();

标签: c#asp.net-corememorycache

解决方案


这似乎有效:

services.AddScoped<MemoryCache, MemoryCache>();

然后将其作为 MemoryCache 注入


推荐阅读