From 89a1ec1cb5460f7f7cce6b8c0d6270625dd792fa Mon Sep 17 00:00:00 2001 From: Doug Bunting Date: Fri, 6 Mar 2015 15:04:18 -0800 Subject: [PATCH] Apply `configureHostServices` after the `fallbackProvider` - allows MVC to override `IApplicationEnvironment` in functional tests --- src/Microsoft.AspNet.Hosting/HostingServices.cs | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/Microsoft.AspNet.Hosting/HostingServices.cs b/src/Microsoft.AspNet.Hosting/HostingServices.cs index e49d792fee..55859c9a84 100644 --- a/src/Microsoft.AspNet.Hosting/HostingServices.cs +++ b/src/Microsoft.AspNet.Hosting/HostingServices.cs @@ -17,16 +17,19 @@ namespace Microsoft.AspNet.Hosting private static IServiceCollection Import(IServiceProvider fallbackProvider, Action configureHostServices) { var services = new ServiceCollection(); - if (configureHostServices != null) - { - configureHostServices(services); - } var manifest = fallbackProvider.GetRequiredService(); foreach (var service in manifest.Services) { services.AddTransient(service, sp => fallbackProvider.GetService(service)); } + services.AddSingleton(sp => new HostingManifest(services)); + + if (configureHostServices != null) + { + configureHostServices(services); + } + return services; }