//for identifier, we should not do update, as it links to the search result. private async Task <bool> UpdateIdentifiers() { if (_personSought.Identifiers == null) { return(true); } _logger.LogDebug($"Attempting to update identifier records for PersonSought."); foreach (PersonalIdentifier pi in _personSought.Identifiers.Where(m => m.Owner == OwnerType.PersonSought)) { IdentifierEntity identifierEntity = _mapper.Map <IdentifierEntity>(pi); SSG_Identifier originalIdentifier = _uploadedPerson.SSG_Identifiers?.FirstOrDefault( m => m.InformationSource == InformationSourceType.Request.Value && m.IdentifierType == identifierEntity.IdentifierType && m.IsCreatedByAgency); if (originalIdentifier == null) { await UploadIdentifiers(); } else { identifierEntity.IsCreatedByAgency = true; IDictionary <string, object> updatedFields = originalIdentifier.Clone().GetUpdateEntries(identifierEntity); if (updatedFields.Count > 0) { await _searchRequestService.UpdateIdentifier(originalIdentifier.IdentifierId, updatedFields, _cancellationToken); _logger.LogInformation("Update Identifier records for SearchRequest successfully"); } } } return(true); }