/// <summary>Returns a list of errors messages. Returns an empty list if there aren't any issues.</summary> protected List <string> GetBaseValidationErrorMessages() { var errorMessages = new List <string>(); if (AcceptedOrganisationStatuses == null) { errorMessages.Add("AcceptedOrganisationStatuses isn't defined."); } else { errorMessages.AddRange(AcceptedOrganisationStatuses .Where(string.IsNullOrWhiteSpace) .Select(status => $"'{status}' is not a valid value in AcceptedOrganisationStatuses.")); } if (AcceptedOrganisationTypes == null) { errorMessages.Add("AcceptedOrganisationTypes isn't defined."); } else { errorMessages.AddRange(AcceptedOrganisationTypes .Where(string.IsNullOrWhiteSpace) .Select(type => $"'{type}' is not a valid value in AcceptedOrganisationTypes.")); } if (string.IsNullOrWhiteSpace(FirstAcceptedOrganisationStatus) && string.IsNullOrWhiteSpace(FirstAcceptedOrganisationType)) { errorMessages.Add("Either AcceptedOrganisationStatuses or AcceptedOrganisationTypes has to contain at least one value."); } if (string.IsNullOrWhiteSpace(DeliveryIdFieldName)) { errorMessages.Add("DeliveryIdFieldName isn't defined."); } if (string.IsNullOrWhiteSpace(OrganisationIdFieldName)) { errorMessages.Add("OrganisationIdFieldName isn't defined."); } if (string.IsNullOrWhiteSpace(PrimaryContactCheckboxFieldName)) { errorMessages.Add("PrimaryContactCheckboxFieldName isn't defined."); } if (string.IsNullOrWhiteSpace(WebcrmApiKey)) { errorMessages.Add("OrganisationIdFieldName isn't defined."); } if (string.IsNullOrWhiteSpace(WebcrmSystemId)) { errorMessages.Add("WebcrmSystemId isn't defined."); } return(errorMessages); }