WsWriteStartAttribute 函数 (webservices.h)

此操作开始将特性写入当前元素。 必须先调用 WsWriteStartElement,然后才能写入特性。 启动特性后,可以使用 WsWriteCharsWsWriteBytes 或WsWriteValue 编写属性值。 必须使用 WsWriteEndAttribute 完成特性。

语法

HRESULT WsWriteStartAttribute(
  [in]           WS_XML_WRITER       *writer,
  [in, optional] const WS_XML_STRING *prefix,
  [in]           const WS_XML_STRING *localName,
  [in]           const WS_XML_STRING *ns,
  [in]           BOOL                singleQuote,
  [in, optional] WS_ERROR            *error
);

参数

[in] writer

指向要向其写入特性 的 WS_XML_WRITER 对象的指针。 指针必须引用有效的 XML 编写器 对象。

[in, optional] prefix

指向要用于特性的前缀的WS_XML_STRING指针。 如果此参数引用的值为 NULL ,则编写器将选择一个属性。

[in] localName

指向 特性使用的本地名称的WS_XML_STRING指针。 长度必须至少为一个字符。

[in] ns

指向要用于特性的命名空间的WS_XML_STRING指针。

如果未指定前缀,编写器可能会在范围中使用绑定到指定命名空间的前缀,或者可能会生成前缀并包含 XMLNS 属性。

如果指定了前缀,编写器将使用该前缀,并可以包含 XMLNS 属性(如果需要)来替代范围内的现有前缀。

[in] singleQuote

确定是对属性值使用单引号还是双引号。

注意 使用 WS_XML_WRITER_BINARY_ENCODING 不保留引号字符,此参数不起作用。
 

[in, optional] error

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

返回值

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

返回代码 说明
E_INVALIDARG
一个或多个参数无效。
WS_E_INVALID_OPERATION
由于 对象的当前状态,不允许此操作。
WS_E_INVALID_FORMAT
输入数据的格式不是预期的,或者没有预期的值。
WS_E_QUOTA_EXCEEDED
超出配额。

注解

如果指定 了 NULL 前缀,编写器将为命名空间选择前缀。

若要编写“xml:lang”或“xml:space”属性,请为前缀指定“xml”,为 localName 指定“lang”或“space”,并指定“http://www.w3.org/XML/1998/namespace"为 命名空间。

如果写入属性导致超出 WS_XML_WRITER_PROPERTY_MAX_ATTRIBUTES ,则返回 WS_E_QUOTA_EXCEEDED

如果使用空命名空间指定了非空前缀 ,则返回WS_E_INVALID_FORMAT 。 (请参阅 Windows Web Services 返回值。)

要求

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