Beispiel #1
0
        private async Task RegisterServiceAsync(CancellationToken cancellationToken)
        {
            if (!RuntimeEnvironment.ServiceId.HasValue)
            {
                var request = new ServiceRequest
                {
                    ServiceName = _config.ServiceName ?? _config.ApplicationCode
                };
                var value = await Polling(3,
                                          () => _serviceRegister.RegisterServiceAsync(request, cancellationToken),
                                          cancellationToken);

                if (value.HasValue && RuntimeEnvironment is RuntimeEnvironment environment)
                {
                    environment.ServiceId = value;
                    Logger.LogInformation($"Registered Service[Id={environment.ServiceId.Value}].");
                }
            }
        }