【问题标题】:How to retrieve a list of Memory Cache keys in .NET Core?如何在 .NET Core 中检索内存缓存键列表?
【发布时间】:2020-12-05 16:02:22
【问题描述】:

如何在 .NET Core Web 应用程序中列出内存缓存中的所有注册键?

【问题讨论】:

标签: caching .net-core memory


【解决方案1】:

我找到了。我分享它来帮助你。

var cacheEntriesCollectionDefinition = typeof(MemoryCache).GetProperty("EntriesCollection", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance);
        var cacheEntriesCollection = cacheEntriesCollectionDefinition.GetValue(_cache) as dynamic;
        List<ICacheEntry> cacheCollectionValues = new List<ICacheEntry>();

        foreach (var cacheItem in cacheEntriesCollection)
        {
            ICacheEntry cacheItemValue = cacheItem.GetType().GetProperty("Value").GetValue(cacheItem, null);
            cacheCollectionValues.Add(cacheItemValue);
        }

【讨论】:

    猜你喜欢
    • 2018-01-17
    • 1970-01-01
    • 2012-08-02
    • 1970-01-01
    • 1970-01-01
    • 2020-07-16
    • 2021-10-18
    • 2021-08-12
    • 2017-11-23
    相关资源
    最近更新 更多