/// <summary> /// Подтверждение созданных ранее операций аудита /// (если аудит идёт в одну БД с приложением, то будет использован сервис данных по умолчанию). /// </summary> /// <param name="executionVariant">Какой статус будет присвоен операции.</param><param name="auditOperationInfoList">Информация о том, что и куда в аудит нужно добавить.</param><param name="dataServiceConnectionString">Строка соединения сервиса данных, который выполняет запись в БД приложения. </param><param name="dataServiceType">Тип сервиса данных, который выполняет запись в БД приложения. </param><param name="throwExceptions">Следует ли пробрасывать дальше возникшее исключение.</param><param name="checkClassAuditSettings">Следует ли проверять настройки аудита самого класса.</param> /// <returns> /// <c>True</c>, если всё закончилось без ошибок. /// </returns> protected override bool RatifyAuditOperation(tExecutionVariant executionVariant, List <AuditAdditionalInfo> auditOperationInfoList, string dataServiceConnectionString, Type dataServiceType, bool throwExceptions, bool checkClassAuditSettings = false) { if (PersistUtcDates) { try { if (AppSetting == null || !AppSetting.AuditEnabled) { throw new DisabledAuditException(); } if (auditOperationInfoList != null && auditOperationInfoList.Count > 0) { // Настройки вообще есть и аудит для приложения включён. var auditRatifyParameters = new RatificationAuditParameters( executionVariant, DateTimeOffset.UtcNow.DateTime, auditOperationInfoList, AppSetting.DefaultWriteMode, ApplicationMode, AppSetting.IsDatabaseLocal ? GetConnectionStringName(dataServiceConnectionString, dataServiceType) : AppSetting.AuditConnectionStringName, IsAuditRemote) { ThrowExceptions = throwExceptions }; CheckAndSendToAudit(auditRatifyParameters, checkClassAuditSettings); } return(true); } catch (Exception ex) { ErrorProcesser.ProcessAuditError(ex, "AuditService, RatifyAuditOperation", throwExceptions); return(false); } } return(base.RatifyAuditOperation(executionVariant, auditOperationInfoList, dataServiceConnectionString, dataServiceType, throwExceptions, checkClassAuditSettings)); }
/// <inheritdoc/> public void RatifyAuditOperation(RatificationAuditParameters ratificationAuditParameters) { throw new NotImplementedException(); }