运行 BizTalk Web 服务发布向导时,将 SOAP 标头添加到 Web 服务。 发布支持 SOAP 标头的 Web 服务时,业务流程和管道组件可以使用标头作为包含 SOAP 标头字符串表示形式的上下文属性。
定义的 SOAP 标头
使用向导添加定义的 SOAP 标头时,向导会创建一个上下文属性,该属性的名称对应于 SOAP 标头的根元素。 所有定义的 SOAP 标头上下文属性都具有命名空间 http://schemas.microsoft.com/BizTalk/2003/SOAPHeader。 当 SOAP 适配器将 SOAP 请求转换为 BizTalk 消息时,它会创建一个 SOAP 标头上下文属性。
以下示例演示了一个简单的 SOAP 请求:
<?xml version="1.0" encoding="utf-8"?>  
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">  
       <soap:Header>  
             <OrigDest xmlns="http://SOAPHeaderWS.ItemAvailability">  
                    <Origination>Work</Origination>  
                    <Destination>Home</Destination>  
             </OrigDest>  
       </soap:Header>  
       <soap:Body>  
  
       </soap:Body>  
</soap:Envelope>  
对于简单的 SOAP 请求,SOAP 适配器使用一个 SOAP 标头上下文属性 OrigDest 和字符串创建了 BizTalk 消息。
以下示例显示了 SOAP 适配器创建的字符串:
"<?xml version="1.0" encoding="utf-16"?><OrigDest xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://SOAPHeaderSchemas.OrigDestSOAPHeader"><Origination xmlns="">Home</Origination><Destination xmlns="">Work</Destination> </OrigDest>"  
未知 SOAP 标头
如果选择在向导中支持未知 SOAP 标头,向导将创建名为 UnknownHeaders 和命名空间 http://schemas.microsoft.com/BizTalk/2003/soap-properties的上下文属性。 
              UnknownHeaders 上下文属性包含所有收到的未知 SOAP 标头。
例如,如果收到具有根元素名称 CustomerGroup 的未知 SOAP 标头, 则 UnknownHeaders 上下文属性包含字符串:
"<?xml version="1.0" encoding="utf-16"?><UnknownHeaders><CustomerGroup xmlns="http://SOAPHeaderWS/CustomerGroup"><Id xmlns="">My Customer</Id>  
</CustomerGroup></UnknownHeaders>"  
有关添加定义的 SOAP 标头或支持未知 SOAP 标头的详细信息,请参阅 将业务流程发布为 Web 服务。 另请参阅 将架构发布为 Web 服务。