public static NSArray ArrayWithContentsOfString(string text) { if (text == null) { return(null); } text = System.Text.RegularExpressions.Regex.Replace(text, "<.*\\.dtd\">", string.Empty); XmlReaderSettings settings = new XmlReaderSettings(); settings.ProhibitDtd = false; settings.ValidationType = ValidationType.None; XmlDocument xmlDoc = new XmlDocument(); using (StringReader sr = new StringReader(text)) using (XmlReader reader = XmlReader.Create(sr, settings)) { xmlDoc.Load(reader); } // XmlDocument xmlDoc = new XmlDocument(); // xmlDoc.LoadXml (text); XmlNode rootNode = xmlDoc.DocumentElement.ChildNodes[0]; if (rootNode.Name != "array") { return(null); } return(NSCollectionUtils.ParseArray(rootNode)); }