gpt4 book ai didi

c# - 从 ServiceCollection 获取 IConfiguration

转载 作者:行者123 更新时间:2023-12-01 23:30:46 25 4
gpt4 key购买 nike

我正在为 ServiceCollection 编写自己的扩展方法来注册我的模块的类型,并且我需要从集合中访问 IConfiguration 实例来注册我的选项。

扩展方法

public static IServiceCollection AddApi(this IServiceCollection services)
{
// Get configuration from collection
var configuration = (IConfiguration) services.FirstOrDefault(p => p.ServiceType == typeof(IConfiguration)).ImplementationInstance;

services.Configure<DatabaseOptions>(configuration.GetSection("Database"));
}

这是从集合中获取 IConfiguration 实例的正确方法还是有更优雅的解决方案?我不想将 IConfiguration 实例作为参数添加到该方法。

最佳答案

要从 IServiceCollection 获取 IConfiguration 为什么不直接解决依赖关系?:

IConfiguration configuration = services.BuildServiceProvider().GetService<IConfiguration>();

关于c# - 从 ServiceCollection 获取 IConfiguration,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45751017/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com