如何在.NET 5.0 应用程序启动期间调用数据库并将数据放入缓存?

How to make a call to DB and put data in cache during application startup in .NET 5.0?

我有一个方法 FetchUsers(它存储在单独的 class 中),它会进入数据库并获取我的应用程序需要的所有用户,然后将其放入缓存中。

现在这段代码在每次请求之前在自定义中间件中执行,但我需要这段代码只执行一次,当应用程序启动时,然后每次从缓存中获取数据,并且仅在数据过期时执行从缓存中,我们应该去数据库并获取它。我如何在 Program.cs 文件中执行此操作。我不想明确地创建这个 class(像这样:new FetchUsers(someDependencies))有没有办法以其他方式做到这一点?

听起来您很想使用单例模式? What is a singleton in C#?