/// <summary> /// Запрос на получение перечня журналов событий /// </summary> public async void RequestEventLogs(RequestEventLogsDto dto) { CancelEventLogsRequestTokenSource = new CancellationTokenSource(); var callback = GetCurrentCallBack(); Console.WriteLine(string.Format("RequestEventLogs {0}", dto.Id)); var response = new ResponseEventLogsDto() { Id = dto.Id }; try { response.EventLogs = await Task.Run(() => EventLog.GetEventLogs().Select( l => new EventLogInfoDto() { Name = l.Log, DisplayName = l.LogDisplayName } ).ToList(), CancelEventLogsRequestTokenSource.Token); } catch (Exception ex) { response.ErrorMessage = ex.Message; } Console.WriteLine(string.Format("RequestEventLogs {0} Complete {1}", response.Id, response.ErrorMessage)); if (!CancelEventLogsRequestTokenSource.IsCancellationRequested) { Run(callback, c => c.ResponseEventLogs(response)); } }
public void ResponseEventLogs(ResponseEventLogsDto dto) { EventLogsResponse(this, new DtoEventArgs <ResponseEventLogsDto>(dto)); }