/// ------------------------------------------------------------------------------------
        public SearchQueryValidationError Copy()
        {
            var error = new SearchQueryValidationError(Message);

            error.HelpLinks.AddRange(HelpLinks);
            error.Exception             = Exception;
            error.PhonesNotInCache      = PhonesNotInCache.ToList();
            error.SymbolsNotInInventory = SymbolsNotInInventory.ToList();
            return(error);
        }
        /// ------------------------------------------------------------------------------------
        public string GetUnknownPhonesDisplayText()
        {
            if (PhonesNotInCache.Count == 0)
            {
                return(null);
            }

            var text = PhonesNotInCache
                       .Aggregate(string.Empty, (curr, p) => curr + (p == " " ? "(space)" : p + ", "));

            return(text.TrimEnd(',', ' '));
        }