public static List <string> ParseConcatenatedString(string ConcatenatedStrings, string Delimiter = null, bool MakeLowerCase = true, bool RemoveReservedCharacters = true, string ReplacementCharacters = "") { if (Delimiter == null) { Delimiter = CommunicationAddressDelimiter; } List <string> returnList = new List <string>(); if (ConcatenatedStrings != null && ConcatenatedStrings.Length > 0) { var entries = ConcatenatedStrings.Split(new string[] { Delimiter }, StringSplitOptions.None); foreach (var entry in entries) { //Limiting total tag length if (entry.Length <= MaximumTagLength) { var entryValue = entry; entryValue = GraphQueryBusinessLogic.ConformStringForQuery(entryValue, MakeLowerCase, RemoveReservedCharacters, ReplacementCharacters); returnList.Add(entryValue); } } } return(returnList); }