WsGetReaderNode 函数 (webservices.h)

函数返回位于 XML 读取器的当前位置的 XML 节点

语法

HRESULT WsGetReaderNode(
  [in]           WS_XML_READER     *xmlReader,
                 const WS_XML_NODE **node,
  [in, optional] WS_ERROR          *error
);

参数

[in] xmlReader

指向要为其获取当前节点的读取器的指针。 这必须WS_XML_READER对象有效。

node

对返回当前节点 的WS_XML_NODE 结构的引用。

[in, optional] error

指向 WS_ERROR 对象的指针,如果函数失败,应存储有关错误的其他信息。

返回值

此函数可以返回其中一个值。

返回代码 说明
E_INVALIDARG
一个或多个参数无效。

注解

应检查节点nodeType 字段,以确定返回的节点类型。 然后,可将 节点 强制转换为相应的数据结构以获取数据。

WS_XML_NODE* node;
if (SUCCEEDED(WsGetReaderNode(reader, &node, error)))
{
    if (node->nodeType == WS_XML_NODE_TYPE_ELEMENT)
    {
        WS_XML_ELEMENT_NODE* elementNode = (WS_XML_ELEMENT_NODE*) node;
        // Refer to elementNode->localName, elementNode->ns
    }
}

具有扩展结构的 nodeType 包括:

不应修改返回的节点,并且仅在读取器前进之前有效。 对于 WS_XML_ELEMENT_NODE 调用方不应期望属性以任何特定顺序显示。

要求

要求
最低受支持的客户端 Windows 7 [桌面应用 |UWP 应用]
最低受支持的服务器 Windows Server 2008 R2 [桌面应用 |UWP 应用]
目标平台 Windows
标头 webservices.h
Library WebServices.lib
DLL WebServices.dll