TryGetValue()与GetorCreate()之间的区别?

问题描述 投票:1回答:1

我正在使用ASP.NET MVC和Angular制作Web应用。为了缓存主仪表板的结果,我使用了内置的IMemoryCache。

我正在将GetorCreate用于其异步版本,但是TryGetValue()和GetorCreate()的真正区别是什么?他们不是都尝试从缓存中获取值,但是如果不是,我们可以做到这一点?

asp.net angularjs asp.net-mvc-4 caching
1个回答
0
投票

也许将来对某人有用。

GetOrCreate():通过使用cache.GetOrCreate()您可以检查所传递的密钥是否存在以及是否不存在,然后将创建新的缓存键值。

cache.GetOrCreate()<string>(“username”, entry => { return “admin”; });

TryGetValue():通过使用cache.TryGetValue(),我们可以检查键是否存在。这里主要的区别是cache.GetOrCreate()和cache.TryGetValue()方法是TryGet()方法将仅检查密钥是否存在,而GetOrCreate()方法将缓存密钥是否存在以及是否它不存在,然后可以创建一个新的。

cache.TryGetValue()<string>(“username”, out string username);

但是两种方法之间没有太多区别

链接:https://www.itpathsolutions.com/know-about-in-memory-caching-asp-net-core/https://docs.microsoft.com/en-US/aspnet/core/performance/caching/memory?view=aspnetcore-3.1#cache-guidelines

© www.soinside.com 2019 - 2024. All rights reserved.