private async Task InsertFascicleDocumentUnitCategory(FascicleDocumentUnit fascicleDocumentUnit)
        {
            try
            {
                DocumentUnitFascicleCategory documentUnitFascicleCategory = new DocumentUnitFascicleCategory
                {
                    Category     = fascicleDocumentUnit.Fascicle.Category,
                    DocumentUnit = fascicleDocumentUnit.DocumentUnit,
                    Fascicle     = fascicleDocumentUnit.Fascicle
                };
                DocumentUnitFascicleHistoricizedCategory documentUnitFascicleHistoricizedCategory = new DocumentUnitFascicleHistoricizedCategory
                {
                    UnfascicolatedDate = fascicleDocumentUnit.RegistrationDate,
                    ReferencedFascicle = $"{fascicleDocumentUnit.Fascicle.Title} - {fascicleDocumentUnit.Fascicle.FascicleObject}",
                    Category           = fascicleDocumentUnit.Fascicle.Category,
                    DocumentUnit       = fascicleDocumentUnit.DocumentUnit
                };

                await PostDocumentUnitFascicleCategory(documentUnitFascicleCategory);

                _logger.WriteDebug(new LogMessage($"DocumentUnitFascicleCategory - {documentUnitFascicleCategory.GetType()} - {documentUnitFascicleCategory.UniqueId} has been successfully created."), LogCategories);

                await PostDocumentUnitFascicleHistoricizedCategory(documentUnitFascicleHistoricizedCategory);

                _logger.WriteDebug(new LogMessage($"DocumentUnitFascicleHistoricizedCategory - {documentUnitFascicleHistoricizedCategory.GetType()} - {documentUnitFascicleHistoricizedCategory.UniqueId} has been successfully created."), LogCategories);
            }
            catch (Exception ex)
            {
                _logger.WriteError(new LogMessage("FascicleDocumentUnit, InsertFascicleDocumentUnitCategory Error: "), ex, LogCategories);
                throw ex;
            }
        }
        private async Task DeleteFascicleDocumentUnitCategory(FascicleDocumentUnit fascicleDocumentUnit)
        {
            try
            {
                DocumentUnitFascicleCategory documentUnitFascicleCategory = await GetDocumentUnitFascicleCategory(fascicleDocumentUnit);

                if (documentUnitFascicleCategory == null)
                {
                    _logger.WriteWarning(new LogMessage($"DocumentUnitFascicleCategory was not found for FascicleDocumentUnitId - {fascicleDocumentUnit.UniqueId}"), LogCategories);
                    throw new Exception($"DocumentUnitFascicleCategory was not found for FascicleDocumentUnitId - {fascicleDocumentUnit.UniqueId}");
                }

                await DeleteDocumentUnitFascicleCategory(documentUnitFascicleCategory);

                _logger.WriteDebug(new LogMessage($"DocumentUnitFascicleHistoricizedCategory - {documentUnitFascicleCategory.GetType()} - {documentUnitFascicleCategory.UniqueId} has been successfully deleted."), LogCategories);
            }
            catch (Exception ex)
            {
                _logger.WriteError(new LogMessage("FascicleDocumentUnit, DeleteFascicleDocumentUnitCategory Error: "), ex, LogCategories);
                throw ex;
            }
        }
 internal async Task <DocumentUnitFascicleCategory> DeleteDocumentUnitFascicleCategory(DocumentUnitFascicleCategory documentUnitFascicleCategory)
 {
     try
     {
         return(await _webApiClient.DeleteEntityAsync(documentUnitFascicleCategory));
     }
     catch (Exception ex)
     {
         _logger.WriteError(new LogMessage("DeleteDocumentUnitFascicleCategory Error: DocumentUnitFascicleCategory not sended to WebAPI"), ex, LogCategories);
         throw ex;
     }
 }