Evaluate

IXPathEvaluator.Evaluate method

Вычисляет строку выражения XPath и возвращает результат указанного типа, если это возможно.

public IXPathResult Evaluate(string expression, Node contextNode, IXPathNSResolver resolver, 
    XPathResultType type, object result)
ПараметрТипОписание
expressionStringСтрока выражения XPath для анализа и оценки.
contextNodeNodeконтекст является контекстным узлом для оценки этого выражения XPath. ЕслиIXPathEvaluator был получен путем литья Document то он должен принадлежать тому же документу и должен быть Document ,Element ,Attr ,Text , CDATASection ,Comment ,ProcessingInstruction , илиXPathNamespace узел. Если узел контекста являетсяText или CDATASectionтогда контекст интерпретируется как весь логический текстовый узел , видимый XPath, если узел не пуст, и в этом случае он не может служить контекстом XPath.
resolverIXPathNSResolverрезольвер разрешает перевод всех префиксов, включая XML префикс пространства имен в выражении XPath в соответствующие URI пространства имен. Если это указано какнулевой , любой префикс пространства имен в выражении приведет к вDOMException бросают с кодомNAMESPACE_ERR.
typeXPathResultTypeЕсли конкретныйтип указан, то результат будет возвращен как соответствующего типа. Для результатов XPath 1.0 это должно быть одно из значений XPathResultType перечисление
resultObjectрезультат указывает конкретный объект результата, который может быть повторно использован и возвращен этим методом. Если это указано какнулевойили реализация не повторно использует указанный результат, будет создан и возвращен новый объект результата. Для результатов XPath 1.0 этот объект будет иметь типIXPathResult.

Возвращаемое значение

Результат вычисления выражения XPath. Для результатов XPath 1.0 этот объект будет иметь типIXPathResult.

Исключения

исключениеусловие
DOMExceptionINVALID_EXPRESSION_ERR: Возникает, если выражение недопустимо в соответствии с правиламиIXPathEvaluator.
DOMExceptionTYPE_ERR: Возникает, если результат не может быть преобразован для возврата указанного типа .
DOMExceptionNAMESPACE_ERR: Возникает, если выражение содержит префиксы пространств имен , которые не могут быть разрешены указаннымIXPathNSResolver.
DOMExceptionWRONG_DOCUMENT_ERR: узел взят из документа, который не поддерживается этимIXPathEvaluator.
DOMExceptionNOT_SUPPORTED_ERR: Тип узла не разрешен в качестве узла контекста XPath , или тип запроса не разрешен этимIXPathEvaluator.

Смотрите также