Esempio n. 1
0
        private static string GetSummary(GetContentResponse response)
        {
            var documents = response.PrimaryDocuments;
            if (documents == null)
                return null;

            var primary = documents.FirstOrDefault();
            if (primary == null || primary.Any == null)
                return null;

            var nameTable = new NameTable();
            var manager = new XmlNamespaceManager(nameTable);
            manager.AddNamespace("xhtml", "http://www.w3.org/1999/xhtml");
            var nodeList = primary.Any.SelectNodes("//xhtml:div[@class='summary']", manager);
            if (nodeList == null)
                return null;

            var node = nodeList.OfType<XmlElement>().FirstOrDefault();
            if (node == null)
                return null;

            // Remove all non C# markup

            var nonCSharpNodes = node.SelectNodes(".//xhtml:variation[@devLang!='cs']", manager);
            if (nonCSharpNodes != null)
            {
                var xmlElements = nonCSharpNodes.Cast<XmlElement>().ToArray();
                foreach (var element in xmlElements)
                    element.ParentNode.RemoveChild(element);
            }

            return node.InnerText;
        }
Esempio n. 2
0
        private static string GetSummary(GetContentResponse response)
        {
            var documents = response.PrimaryDocuments;

            if (documents == null)
            {
                return(null);
            }

            var primary = documents.FirstOrDefault();

            if (primary == null || primary.Any == null)
            {
                return(null);
            }

            var nameTable = new NameTable();
            var manager   = new XmlNamespaceManager(nameTable);

            manager.AddNamespace("xhtml", "http://www.w3.org/1999/xhtml");
            var nodeList = primary.Any.SelectNodes("//xhtml:div[@class='summary']", manager);

            if (nodeList == null)
            {
                return(null);
            }

            var node = nodeList.OfType <XmlElement>().FirstOrDefault();

            if (node == null)
            {
                return(null);
            }

            // Remove all non C# markup

            var nonCSharpNodes = node.SelectNodes(".//xhtml:variation[@devLang!='cs']", manager);

            if (nonCSharpNodes != null)
            {
                var xmlElements = nonCSharpNodes.Cast <XmlElement>().ToArray();
                foreach (var element in xmlElements)
                {
                    element.ParentNode.RemoveChild(element);
                }
            }

            return(node.InnerText);
        }