public static void ConfigureWebHostStackApp(this ISImplHostBuilder hostBuilder, Action <IWebHostBuilder> configureDelegate) { // Configure Generic host var startupConfiguration = new WebHostStartupConfiguration(); var applicationHostBuilder = new WebHostBuilder(startupConfiguration); configureDelegate?.Invoke(applicationHostBuilder); // Get startup and application builder var startup = startupConfiguration.GetConfiguredStartup(); var stackApplicationBuilder = RuntimeServices.Current.BootContainer.New <WebHostApplicationBuilder>(); // attach application hostBuilder.AttachNewOrGetConfiguredModule(() => new WebHostStackApplicationModule(stackApplicationBuilder, startup.ConfigureStackApplication, startup.ConfigureServices)); }
public static ISImplHostBuilder ConfigureWebHostStackApp(this ISImplHostBuilder hostBuilder, Action <IWebHostBuilder> configureDelegate = null) { // Configure Generic host var startupConfiguration = new WebHostStartupConfiguration(); var applicationHostBuilder = RuntimeServices.Current.BootContainer.New <WebHostBuilder>(new Dictionary <Type, object> { [typeof(WebHostStartupConfiguration)] = startupConfiguration }); configureDelegate?.Invoke(applicationHostBuilder); // Get startup and application builder var startup = startupConfiguration.GetConfiguredStartup(); var stackApplicationBuilder = RuntimeServices.Current.BootContainer.New <WebHostApplicationBuilder>(); // attach application hostBuilder.AttachNewOrGetConfiguredModule(() => new WebHostStackApplicationModule(stackApplicationBuilder, startup.ConfigureStackApplication, startup.ConfigureServices)); return(hostBuilder); }