public Worker(ILogger <Worker> logger, CoreHierarchyServiceConfiguration config) { //_logger = logger; _config = config; Logging.InitializeLogging(_config); Log.Information("Sample Log output!"); // We dont need the environment switch anymore! // when debugging this will automatically run in console mode, but when deployed will run as service! Cool }
public static IHostBuilder CreateHostBuilder(string[] args) => Host.CreateDefaultBuilder(args) .UseWindowsService() // Configures my service! .ConfigureServices((hostContext, services) => { // This is the DI for the Worker class! Very cool! IConfiguration configuration = hostContext.Configuration; CoreHierarchyServiceConfiguration config = configuration .GetSection("CoreHierarchyServiceConfiguration").Get <CoreHierarchyServiceConfiguration>(); services.AddSingleton(config); services.AddHostedService <Worker>(); }) // Configures my Web Api! .ConfigureWebHostDefaults(webBuilder => { webBuilder.UseStartup <Startup>(); });