Как проследить проблемы сериализации WCF / исключения

Я иногда сталкиваюсь с проблемой, что исключение приложения выдается во время WCF-сериализации (после возврата DataContract от моего OperationContract). Единственное (и менее многозначительный) сообщение, которое я получаю,

Система. ServiceModel. CommunicationException: базовое соединение было закрыто: соединение было неожиданно закрыто.

без любого понимания к внутреннему исключению, которое делает его действительно трудно для обнаружения то, что вызвало ошибку во время сериализации.

Кто-то знает хороший путь, как можно проследить, зарегистрировать и отладить эти исключения? Или еще лучше я могу поймать исключение, обработать их и отправить определенный FaulMessage клиенту?

спасибо

9
задан Fabiano 5 May 2010 в 21:55
поделиться

1 ответ

Вы должны получить внутреннее исключение, если настроите поведение службы следующим образом:

<system.serviceModel>
     <behaviors>
         <serviceBehaviors>
               <behavior name="YourServiceBehaviour">
                   ...
                   <serviceDebug includeExceptionDetailInFaults="true" />
                   ...
               </behavior>
         </serviceBehaviors>
     </behaviors>
</system.serviceModel>

Кроме того, вы можете включить трассировку. Не нашел хорошей статьи, но, возможно, это поможет вам начать:

http://developers.de/blogs/damir_dobric/archive/2009/03/24/using-of-wcf-trace.aspx

5
ответ дан 3 November 2019 в 07:12
поделиться
Другие вопросы по тегам:

Похожие вопросы: