(webservices.h) WS_FAULT结构

错误是消息正文中传递的值,它传达了处理失败。 故障是使用 WS_FAULT 结构建模的。

语法

typedef struct _WS_FAULT {
  WS_FAULT_CODE   *code;
  WS_FAULT_REASON *reasons;
  ULONG           reasonCount;
  WS_STRING       actor;
  WS_STRING       node;
  WS_XML_BUFFER   *detail;
} WS_FAULT;

成员

code

用于标识故障类型的错误代码列表的头。

错误代码从大多数泛型排序到最具体。 必须至少有一个错误代码。 第一个错误代码必须与 SOAP 定义的错误代码相对应。 对于 WS_ENVELOPE_VERSION_SOAP_1_1,仅序列化最具体的错误代码 (列表中的第一个) 。

如果第一个错误代码的命名空间 URI 为空字符串,则在序列化错误时,第一个错误代码将按如下所示进行转换,如下所示:

这些转换允许指定 SOAP 错误代码,而无需担心使用哪个 SOAP 版本。

reasons

描述错误的文本。 这是允许使用不同语言的数组。

reasonCount

原因数组中的原因数。 如果文本以多种语言表示,则这不止一种。 必须至少有一个错误原因。

对于 WS_ENVELOPE_VERSION_SOAP_1_1,只序列化第一个原因。

actor

导致错误的处理器的名称。 如果字符串长度为零,则假定为终结点。

node

导致错误的处理器的位置。 如果字符串长度为零,则假定为终结点。

对于 WS_ENVELOPE_VERSION_SOAP_1_1,此值不会序列化。

detail

错误详细信息允许包含 XML 内容以及错误。 如果没有详细信息,则此字段可能为 NULL

对于 WS_ENVELOPE_VERSION_SOAP_1_1,仅当错误与处理消息标头无关时,才应使用此错误。 与标头相关的错误应使用自定义标头来中继有关错误的信息。

如果故障有详细信息, 则WS_XML_BUFFER 应包含对应于 SOAP 错误的详细信息元素的元素。 特定于错误的 XML 内容包含在详细信息元素中。 忽略元素的本地名称和命名空间;在写入详细信息元素时,它们会根据 WS_ENVELOPE_VERSION 替换为相应的元素名称。

要求

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