read configuration workerservice
public class Program {
public static void Main(string[] args) {
CreateHostBuilder(args).Build().Run();
}
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureServices((hostContext, services) => {
IConfiguration configuration = hostContext.Configuration;
WorkerOptions options = configuration
.GetSection("WCF")
.Get<WorkerOptions>();
services.AddSingleton(options);
services.AddHostedService<Worker>();
});
}
public class Worker : BackgroundService {
private readonly ILogger<Worker> logger;
private readonly WorkerOptions options;
public Worker(ILogger<Worker> logger, WorkerOptions options) {
this.logger = logger;
this.options = options;
}
protected override async Task ExecuteAsync(CancellationToken stoppingToken) {
while (!stoppingToken.IsCancellationRequested) {
//do something that uses options
logger.LogInformation("Worker running at: {time}", DateTimeOffset.Now);
await Task.Delay(5000, stoppingToken);
}
}
}
public class WorkerOptions {
public string AminServiceUri { get; set; }
public string BillServiceUri { get; set; }
//... other properties
}
//File appsettings.json
{
"WCF": {
"AminServiceUri":"http://localhost:45108/ServiceHost/v1/AminService.svc",
"BillServiceUri":"http://localhost:45108/ServiceHost/v1/BillService.svc",
//...other key-value pairs
},
"Logging": {
"ExcessiveLogging": false
}
}
Are there any code examples left?
New code examples in category C#
-
C# 2022-03-27 22:40:23 c# movement script
-
C# 2022-03-27 22:15:17 Delete last modification on EntityFramework Core
-
C# 2022-03-27 22:15:02 file.create folder c#
-
C# 2022-03-27 19:25:04 Error inflating class android.support.constraint.ConstraintLayout
-
C# 2022-03-27 19:15:02 top down shooting in unity 2D
-
C# 2022-03-27 18:50:02 c# remove invalid directory characters
-
C# 2022-03-27 18:30:07 how to use K2 games Games parallax background
-
C# 2022-03-27 18:25:10 c# replace crlf
-
C# 2022-03-27 18:25:09 keycode for left mouse click unity