You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ASP.NET Core:如何在Program.cs调用ISecretManager配置Redis缓存

在ASP.NET Core Program.cs中获取Redis密钥配置的解决方案

完全可以在Program.cs中实现,只需使用AddStackExchangeRedisCache的重载方法,该方法支持传入IServiceProvider来获取已注册的服务实例。

具体实现代码

Services.AddStackExchangeRedisCache((serviceProvider, options) =>
{
    var secretManager = serviceProvider.GetRequiredService<ISecretManager>();
    options.Configuration = secretManager.Get("REDIS");
});

关键说明

  • 这个重载委托允许你在配置Redis缓存选项时,直接从服务容器中获取已注册的ISecretManager,因为你已经提前完成了它的依赖注入注册,所以可以正常调用。
  • 使用GetRequiredService<ISecretManager>()比GetService<ISecretManager>()更可靠,它会在服务未注册时直接抛出异常,避免后续出现空引用的潜在问题。

内容的提问来源于stack exchange,提问作者Master

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 12:47:05