public static object XPathEvaluate(this XNode node, string expression, IXmlNamespaceResolver resolver) { if (node == null) { throw new ArgumentNullException("node"); } XPathEvaluator evaluator2 = new XPathEvaluator(); return(evaluator2.Evaluate <object>(node, expression, resolver)); }
public static IEnumerable <XElement> XPathSelectElements(this XNode node, string expression, IXmlNamespaceResolver resolver) { if (node == null) { throw new ArgumentNullException("node"); } XPathEvaluator evaluator2 = new XPathEvaluator(); return((IEnumerable <XElement>)evaluator2.Evaluate <XElement>(node, expression, resolver)); }
/// <summary> /// Select a set of <see cref="XElement"/> using a XPath expression /// </summary> /// <param name="node">Extension point <see cref="XNode"/></param> /// <param name="expression">The XPath expression</param> /// <param name="resolver">A <see cref="IXmlNamespaceResolver"/> for the namespace /// prefixes used in the XPath expression</param> /// <returns>An <see cref="IEnumerable<XElement>"/> corresponding to the resulting set of elements</returns> public static IEnumerable <XElement> XPathSelectElements(this XNode node, string expression, IXmlNamespaceResolver?resolver) { ArgumentNullException.ThrowIfNull(node); return((IEnumerable <XElement>)XPathEvaluator.Evaluate <XElement>(node, expression, resolver)); }
/// <summary> /// Evaluates an XPath expression /// </summary> /// <param name="node">Extension point <see cref="XNode"/></param> /// <param name="expression">The XPath expression</param> /// <param name="resolver">A <see cref="IXmlNamespaceResolver"> for the namespace /// prefixes used in the XPath expression</see></param> /// <returns>The result of evaluating the expression which can be typed as bool, double, string or /// IEnumerable</returns> public static object XPathEvaluate(this XNode node, string expression, IXmlNamespaceResolver?resolver) { ArgumentNullException.ThrowIfNull(node); return(XPathEvaluator.Evaluate <object>(node, expression, resolver)); }