我是.NET Core的新手,如果这是一个新手问题,我很抱歉 . 我使用VS 2017在.NET Core 2中创建了一个Web API项目 .
对我来说,我有 appsettings.json
文件与一些连接设置 .
从microsoft教程阅读 IOptions<T>
后,我正在做类似以下的事情:
public void ConfigureServices(IServiceCollection services)
{
services.AddOptions();
services.Configure<MyOptions>(Configuration);
// I want to access MyOptions object here to configure other services?how do i do that?
service.AddHangfire( // Get MyOptions.HangfireConenctionString etc.)
}
如何在 ConfigureServices
中访问创建的 MYOptions
对象,以及是否需要在 Configure(IApplicationBuilder app,..)
方法中访问它?
我只在教程中看到了控制器中的注入 IOptions<T>
的示例 .
2 回答
要使用某些设置
如果您需要在应用程序组件中使用配置对象,则会向组件中注入
IOptions<T>
,因为这只会导致无法解决的问题,如here所述 . 而是直接注入值,如以下示例所示 .你很亲密
您现在可以使用依赖注入来访问MyOptions
我从安德鲁·洛克(Andrew Lock)的这篇优秀文章中获取了片段:https://andrewlock.net/how-to-use-the-ioptions-pattern-for-configuration-in-asp-net-core-rc2/ .