无法使用非核心项目解析 startup.cs 中的选项
Unable to resolve options in startup.cs with non core project
我有 asp 网络api,我需要解决启动文件中的一些选项。这里的选项有简单的 class 从 json 配置中获取参数。在启动时注册 optionsAutofacModule,其中注册配置部分是我需要的。示例:OptionAutofacModule 中的 RegisterConfigurationOptions<IdentitySettings>(builder, configuration.GetSection("Identity"));
,whitch containerBuilder.RegisterModule<OptionsAutofacModule>();
,它在启动 .cs 中调用。因此,我需要访问 startup.cs 中的 "identitysettings" 内部方法。
编辑 0:我有 net core 项目和 classic asp net web api。使用配置的 Net 核心项目,从 json 文件解析的内容。我可以使用 IOptions 在控制器 classical .net webapi 项目中访问此配置。但是我无法在 startup.cs
中访问此选项
理论上,解决方案很简单,但是我忘记了beginscope。解决方案:
config.DependencyResolver
.BeginScope()
.GetService(typeof(IOptions<YourOptions>)) as IOptions<YourOptions>;
其中配置是 HttpConfiguration
我有 asp 网络api,我需要解决启动文件中的一些选项。这里的选项有简单的 class 从 json 配置中获取参数。在启动时注册 optionsAutofacModule,其中注册配置部分是我需要的。示例:OptionAutofacModule 中的 RegisterConfigurationOptions<IdentitySettings>(builder, configuration.GetSection("Identity"));
,whitch containerBuilder.RegisterModule<OptionsAutofacModule>();
,它在启动 .cs 中调用。因此,我需要访问 startup.cs 中的 "identitysettings" 内部方法。
编辑 0:我有 net core 项目和 classic asp net web api。使用配置的 Net 核心项目,从 json 文件解析的内容。我可以使用 IOptions 在控制器 classical .net webapi 项目中访问此配置。但是我无法在 startup.cs
中访问此选项理论上,解决方案很简单,但是我忘记了beginscope。解决方案:
config.DependencyResolver
.BeginScope()
.GetService(typeof(IOptions<YourOptions>)) as IOptions<YourOptions>;
其中配置是 HttpConfiguration