2010-09-10 4 views
0

У меня есть WCF-клиент, для которого мне нужно регистрировать сообщения. Мне нужен полный SOAP-конверт для обоих запросов и ответов.Как предотвратить ведение журнала сообщений WCF от возврата тела SOAP?

Мой app.config файл протоколирование настроить таким образом:

журнал
<diagnostics> 
    <messageLogging logMalformedMessages="false" logMessagesAtServiceLevel="true" 
        logMessagesAtTransportLevel="false" logEntireMessage="true" 
        maxMessagesToLog="100" maxSizeOfMessageToLog="20000000" /> 
</diagnostics> 

сообщение правильно заполняется ... почти! Для запросов только, тело SOAP является опущено, как это:

<s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" Id="signature_e">...</s:Body> 

Кто-нибудь есть идеи, сейчас, чтобы получить полное тело SOAP в мой журнал?

ответ

1

Оказалось, что одно из действий, которые я настроил для этой конечной точки (IClientMessageInspector), создавал подкласс Message и что этот подкласс не переопределяет OnBodyToString(), который используется для ведения журнала. По умолчанию реализация OnBodyToString() просто выводит ... эллипсис!

Класс сообщений - хитрое зверь.