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; }
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); }