Browse Source

GetConfiguration from HostBuilderContext

pull/1894/head
Halil İbrahim Kalkan 7 years ago
parent
commit
0f24054c6a
  1. 11
      framework/src/Volo.Abp.Core/Microsoft/Extensions/DependencyInjection/ServiceCollectionConfigurationExtensions.cs

11
framework/src/Volo.Abp.Core/Microsoft/Extensions/DependencyInjection/ServiceCollectionConfigurationExtensions.cs

@ -1,11 +1,14 @@
using Microsoft.Extensions.Configuration;
using System;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection.Extensions;
using Microsoft.Extensions.Hosting;
using Volo.Abp.Configuration;
namespace Microsoft.Extensions.DependencyInjection
{
public static class ServiceCollectionConfigurationExtensions
{
[Obsolete]
public static IServiceCollection SetConfiguration(this IServiceCollection services, IConfigurationRoot configurationRoot)
{
return services.Replace(ServiceDescriptor.Singleton<IConfigurationAccessor>(new DefaultConfigurationAccessor(configurationRoot)));
@ -13,6 +16,12 @@ namespace Microsoft.Extensions.DependencyInjection
public static IConfigurationRoot GetConfiguration(this IServiceCollection services)
{
var hostBuilderContext = services.GetSingletonInstanceOrNull<HostBuilderContext>();
if (hostBuilderContext?.Configuration != null)
{
return hostBuilderContext.Configuration as IConfigurationRoot;
}
return services.GetSingletonInstance<IConfigurationAccessor>().Configuration;
}
}

Loading…
Cancel
Save