У меня есть служба WCF, построенная на классах, созданных из WSDL, поставляемого клиентом. К сожалению, этот WSDL не содержит требуемого заголовка сообщения. Клиент не будет поставлять новый WSDL, включая заголовок. У меня есть файл xsd, описывающий заголовок.Ввод заголовка в исходящее сообщение WCF
У меня также есть образец заголовка и знаю, какие поля мне нужно заполнить.
Как я могу взять предоставленный заголовок XML и вставить его в исходящий вызов метода WCF? Я хочу вызвать мой метод обслуживания, как и в настоящее время, но также хочу, чтобы новая структура заголовка составляла часть исходящего сообщения.
Заранее спасибо. Любая помощь будет принята с благодарностью.
Ниже приведен пример структуры сообщения: Мне нужно добавить всю структуру заголовка. Все, что содержало WSDL, было телом.
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Header>
<glob:requestHeader xmlns:glob="http://....">
<timestamp>2013-11-14T05:17:41.793+02:00</timestamp>
<traceMessageId>GUID</traceMessageId>
<enterpriseTraceUUId>GUID</enterpriseTraceUUId>
<contentType>TEXT/XML</contentType>
<sender>
<senderId>SENDER</senderId>
<sourceSystem>001</sourceSystem>
<sourceApplication>001</sourceApplication>
<applicationSessionId>ABC</applicationSessionId>
<sourceLocation>100</sourceLocation>
</sender>
<interfaceName/>
<version>1111</version>
</glob:requestHeader>
</s:Header>
<s:Body xmlns:xsi="http://.../XMLSchema-instance" xmlns:xsd="http://.../XMLSchema">
<UserData xmlns="http://.../Base">
<IdField>1005687</IdField>
<UserInfo>
<UserType>1</UserType>
<UserStatus>Y</UserStatus>
</UserInfo>
</UserData>
</s:Body>
</s:Envelope>
Посмотрите здесь: http://stackoverflow.com/questions/964433/how-to-add-a-custom-header-to-every-wcf-call – Donal
Это это то, что я ищу. Но в этом случае у меня есть очень специфическая структура заголовка, определенная вне WCF, и это будет очень сложно моделировать. Я просто хочу взять фрагмент заголовка XML и вставить его в сообщение. – user3081814