将 WCF 消息中的 SOAP 标头用于管道组件
可以用管道组件中的 WCF 适配器设置自定义 SOAP 标头。 结合使用上下文属性名称 、OutboundCustomHeaders 和目标命名空间 http://schemas.microsoft.com/BizTalk/2006/01/Adapters/WCF-properties
。 使用 OutboundCustomHeaders 属性时,该属性必须具有 <headers> 元素作为根元素。 所有自定义 SOAP 标头都必须放在 headers> 元素中<。 如果自定义 SOAP 标头值为空字符串,则必须将 headers></headers> 或 <headers/> 分配给 <OutboundCustomHeaders 属性。 有关如何将 SOAP 标头用于 WCF 适配器的详细信息,请参阅 中的 https://go.microsoft.com/fwlink/?LinkId=79960SDK 示例:将自定义 SOAP 标头与 WCF 适配器配合使用。
下面的代码示例为名为 OutboundCustomHeaders 的属性设置发送管道组件中的自定义 SOAP 标头:
public IBaseMessage Execute(IPipelineContext pc, IBaseMessage inmsg)
{
try
{
string stringVar = "<headers>
<Origination>Home</Origination>
<Destination>Work</Destination>
</headers>";
inmsg.Context.Write("OutboundCustomHeaders","http://schemas.microsoft.com/BizTalk/2006/01/Adapters/WCF-properties", stringVar);
}
catch (Exception ex)
{
throw new Exception("Pipeline component exception - " + ex.Message);
}
return inmsg;
}
有关管道组件的详细信息,请参阅 开发自定义管道组件。
注意
您不能设置 WCF 基础结构用于 Web Services 标准(例如 WS-Addressing、WS-Security 和 WS-AtomicTransaction)的标准 SOAP 标头。
另请参阅
在 WCF 消息中使用 SOAP 标头和业务流程SOAP 标头与已使用的 WCF 服务WCF 适配器属性架构和属性SOAP 标头与已发布的 WCF 服务