Teilen über


Zugreifen auf SOAP-Header in WCF-Nachrichten mit Pipelinekomponenten

Um mit den WCF-Adaptern in Pipelinekomponenten auf die SOAP-Header zuzugreifen, verwenden Sie eine Kombination aus dem Namen der Kontexteigenschaft, InboundHeaders und dem Zielnamespace http://schemas.microsoft.com/BizTalk/2006/01/Adapters/WCF-properties. Die WCF-Adapter kopieren benutzerdefinierte SOAP-Header und Standard-SOAP-Header in den eingehenden Nachrichten in die InboundHeaders-Eigenschaft . Die WCF-Adapter ermöglichen außerdem die programmgesteuerte Auswahl der Eigenschaften, die Sie heraufstufen oder programmgesteuert in die Kontexteigenschaften schreiben möchten. Weitere Informationen finden Sie unter SOAP-Header mit veröffentlichten WCF-Diensten .

Der in der Kontexteigenschaft enthaltene Wert ist eine Zeichenfolge, die XML-Daten mit dem Stammelement headers>< enthält, und die eingehenden SOAP-Header werden als untergeordnete Elemente des <headers-Elements> kopiert. Weitere Informationen zum Zugreifen auf SOAP-Header mit den WCF-Adaptern finden Sie im SDK-Beispiel "Verwenden von benutzerdefinierten SOAP-Headern mit den WCF-Adaptern" unter https://go.microsoft.com/fwlink/?LinkId=79960.

Der folgende Code aus einer benutzerdefinierten Pipelinekomponente ruft den SOAP-Anforderungsheader in einer Empfangspipelinekomponente für die InboundHeaders-Eigenschaft ab:

public IBaseMessage Execute(IPipelineContext pc, IBaseMessage inmsg)
{
   try
   {
   string stringVar = inmsg.Context.Read("InboundHeaders",    "http://schemas.microsoft.com/BizTalk/2006/01/Adapters/WCF-properties").ToString();
   }
   catch (Exception ex)
   {
   throw new Exception("Pipeline component exception - " + ex.Message);
   }
return inmsg;
}

Weitere Informationen zu Pipelinekomponenten finden Sie unter Entwickeln benutzerdefinierter Pipelinekomponenten.

Weitere Informationen

Zugreifen auf SOAP-Header in WCF-Nachrichten mit OrchestrierungenWCF Adapters-Eigenschaftenschema und EigenschaftenSOAP-Header mit verbrauchten WCF-Diensten