首页 新闻 会员 周边

.NET:如何在 Program.cs 中从 IOpitons 的实例中读取配置

0
悬赏园豆:10 [已解决问题] 解决于 2026-02-15 20:41

一个 ASP.NET Core 10 项目,在 Program.cs 中注册 redis 客户端时需要从 UCenterOptions 中读取配置

services.AddCnblogsRedis(config, options.RedisCache);

请问如何读取?

dudu的主页 dudu | 高人七级 | 园豆:23597
提问于:2026-02-15 18:51
< >
分享
最佳答案
0

通过下面的代码实现了

var options = new UCenterOptions();
config.GetSection(UCenterOptions.SectionName).Bind(options);
services.ConfigureOptions(options);
services.AddCnblogsRedis(config, options.RedisCache);
dudu | 高人七级 |园豆:23597 | 2026-02-15 20:41

上面的 services.ConfigureOptions(options) 运行时会报错

No IConfigureOptions<>, IPostConfigureOptions<>, or IValidateOptions<> implementations were found

需要改成

services.AddOptions<UCenterOptions>().BindConfiguration(UCenterOptions.SectionName);
dudu | 园豆:23597 (高人七级) | 2026-02-15 22:41
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册