private static void Main() { var host = WebHostConfiguration .Configure(new WebHostBuilder(), addCommandLineArguments: true) .UseStartup <Startup>() .Build(); host.Run(); }
public void TestingWebHostConfiguration_GettingSettingProperties_ShouldPass() { var webHostConfiguration = new WebHostConfiguration { Urls = new[] { "url1", "url2" } }; Assert.NotNull(webHostConfiguration); Assert.NotNull(webHostConfiguration.Urls); Assert.Equal("url1", webHostConfiguration.Urls[0]); Assert.Equal("url2", webHostConfiguration.Urls[1]); }
public static TestApplication BuildTestApplication <TStartup>(TestApplication testApp, string environmentName = "Production", Action <IWebHostBuilder> configureHost = null) where TStartup : class { testApp.LoggerProvider = new StubLoggerProvider(); testApp.User = new ClaimsPrincipal(new ClaimsIdentity()); var hostBuilder = new WebHostBuilder(); configureHost?.Invoke(hostBuilder); hostBuilder.ConfigureServices(services => { services.AddTransient <HttpContextFactory>(); services.AddTransient <IHttpContextFactory>((sp) => { var defaultContextFactory = sp.GetService <HttpContextFactory>(); var httpContextFactory = new WrappedHttpContextFactory(defaultContextFactory); httpContextFactory.ConfigureFeatureWithContext((features, httpCtx) => { features.Set <IHttpAuthenticationFeature>(new HttpAuthenticationFeature { User = testApp.User }); features.Set <IServiceProvidersFeature>(new RequestServicesFeature(httpCtx, testApp.ApplicationServices.GetService <IServiceScopeFactory>())); }); return(httpContextFactory); }); }); var connectionStringEVKey = $"DOTNETCLUB_{ServiceExtensions.ConfigKeyConnectionString}"; if (string.IsNullOrEmpty(Environment.GetEnvironmentVariable(connectionStringEVKey))) { Environment.SetEnvironmentVariable(connectionStringEVKey, " "); } Environment.SetEnvironmentVariable("DOTNETCLUB_Logging:Console:LogLevel:Default", "Warning"); WebHostConfiguration.Configure(hostBuilder); hostBuilder.ConfigureLogging(loggingBuilder => { loggingBuilder.SetMinimumLevel(LogLevel.Trace); loggingBuilder.AddProvider(testApp.LoggerProvider); }); hostBuilder .UseContentRoot(TestEnv.WebProjectPath()) .UseEnvironment(environmentName) .UseStartup <TStartup>(); testApp.Server = new TestServer(hostBuilder); testApp.ApplicationServices = testApp.Server.Host.Services; testApp._spOverrider = new ServiceProviderOverrider(testApp.ApplicationServices); return(testApp); }
public static void Main(string[] args) { var configuration = WebHostConfiguration.GetDefault(args); var application = new WebHostBuilder() .UseServer("Microsoft.AspNet.Server.Kestrel") .UseApplicationBasePath(Directory.GetCurrentDirectory()) .UseConfiguration(configuration) .UseStartup <Startup>() .Build(); application.Run(); }
public static IHostBuilder CreateHostBuilder(string[] args) { var assemblyName = typeof(Startup).Assembly.GetName().Name; var configuration = BuildConfiguration(); var webHostConfiguration = new WebHostConfiguration(); configuration.GetSection($"{assemblyName}:{AppSettingsJsonFileSections.WebHost}").Bind(webHostConfiguration); var webHostBuilder = Host.CreateDefaultBuilder(args) .ConfigureWebHostDefaults(webHostConfigurator => { webHostConfigurator.UseConfiguration(configuration); webHostConfigurator.UseStartup <Startup>(); webHostConfigurator.UseUrls(webHostConfiguration.Urls); }); return(webHostBuilder); }