Клиент службы WCF — получает xml soap клиента и сервера в виде строки для внутреннего использования

#c# #wcf-client

#c# #wcf-client

Вопрос:

У меня есть простой клиент службы WCF на c #, который я использую:

    AccountsSoapClient a = new AccountsSoapClient();
    TaskResult res = a.OpenAccount();
  

Есть ли какой-либо способ получить отправленный клиентом sop xml и ответ сервера?

например:

 AccountsSoapClient webService = new AccountsSoapClient();
bool res = webService.OpenAccount();

String client = webService.getClientSubmittedXml();
String server = webService.getServerResponseXml();
  

Спасибо

Ответ №1:

Если это для ведения журнала, вы можете просто активировать трассировку. Если нет, вы могли бы написать пользовательский инспектор сообщений, который позволит вам получать сообщения запроса / ответа. И вот сообщение в блоге, иллюстрирующее пользовательский инспектор.

Комментарии:

1. Есть ли способ без использования инспектора сообщений? Поскольку класс service contract имеет много методов (сервисов), но мы хотим иметь XML только для одного из них, поэтому не хотим отслеживать каждый метод обслуживания и снижать производительность или добавлять сложности…