WS_READ_TYPE_CALLBACK回调函数 (webservices.h)

指定 WS_TYPE 时读取值。 这允许读取不轻易映射到核心序列化模型的 XML 构造。

语法

WS_READ_TYPE_CALLBACK WsReadTypeCallback;

HRESULT WsReadTypeCallback(
  [in]           WS_XML_READER *reader,
  [in]           WS_TYPE_MAPPING typeMapping,
  [in]           const void *descriptionData,
  [in, optional] WS_HEAP *heap,
                 void *value,
  [in]           ULONG valueSize,
  [in, optional] WS_ERROR *error
)
{...}

参数

[in] reader

指向包含类型值的 WS_XML_READER 句柄的指针。

[in] typeMapping

指示 XML 如何映射到此类型。

如果映射对此特定类型没有意义,则回调应返回 WS_E_INVALID_OPERATION。 (请参阅 Windows Web Services Return Values.) 应准备好在将来版本中传递新的映射类型,并且应为这些情况返回 WS_E_INVALID_OPERATION

[in] descriptionData

指向WS_CUSTOM_TYPE_DESCRIPTION结构 descriptionData 字段的值的指针。 回调可用于获取对该类型的任何其他信息的访问权限。

[in, optional] heap

指向堆的指针,用于分配与此类型关联的任何其他数据,例如其嵌套字段。

请注意,如果调用方在反序列化类型时未指定WS_HEAP对象,则此参数可能为 NULL

value

指向保存要反序列化的值的缓冲区的指针。 回调负责根据读取器和 typeMapping 的当前内容填充值。 如果需要,回调可以使用提供的堆来分配与该值关联的值。

[in] valueSize

正在反序列化的缓冲区大小。 根据 WS_CUSTOM_TYPE_DESCRIPTION中指定的大小分配缓冲区。

[in, optional] error

指向 WS_ERROR 数据结构的指针,如果函数失败,则应存储其他错误信息。

返回值

此回调函数不返回值。

注解

回调将与 WS_TYPE_MAPPING 文档中的 WsReadType 相同的调用序列调用。 这将定义回调应读取的 XML 的各个部分。

要求

   
最低受支持的客户端 Windows 7 [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 R2 [仅限桌面应用]
目标平台 Windows
标头 webservices.h