Пример #1
0
 public override Task StartAsync(CancellationToken cancellationToken)
 {
     watcher = new FileSystemWatcher
     {
         Path = directory
     };
     watcher.Created += OnChanged;
     watcher.Changed += OnChanged;
     watcher.Deleted += OnDeleted;
     watcher.Renamed += OnRenamed;
     _folderLogger.RemoveLogData();
     _folderLogger.LogWrite($"Worker running at: {DateTimeOffset.Now}");
     return(base.StartAsync(cancellationToken));
 }
Пример #2
0
        protected override async Task ExecuteAsync(CancellationToken stoppingToken)
        {
            while (!stoppingToken.IsCancellationRequested)
            {
                _logger.LogInformation("Worker running at: {time}", DateTimeOffset.Now);
                using (var client = new HttpClient())
                {
                    var response = await client.GetAsync("http://localhost:61351/api/queue/retrieve/log");

                    string result = response.Content.ReadAsStringAsync().Result;
                    _logger.LogInformation(result);
                    try
                    {
                        var log = JsonConvert.DeserializeObject <MessageDto>(result);
                        if (log != null)
                        {
                            _folderLogger.LogWrite($"Worker running at: {DateTimeOffset.Now}");
                            await client.GetAsync("http://localhost:61351/api/queue/handled/" + log.Id);
                        }
                    }
                    catch (Exception ex)
                    {
                        _logger.LogInformation(ex.Message);
                    }
                }
                await Task.Delay(20000, stoppingToken);
            }
        }