Должны ли конструкторы для служб WCF использовать ошибки для обработки ошибок? - PullRequest
5 голосов
/ 27 августа 2009

У меня есть сервис wcf. Сам сервис (класс, который наследует ServiceContract ) имеет конструктор, который иногда выдает исключения. Я хочу представить пользователю сообщение, если служба не работает. Должен ли я использовать неисправности, как для метода обслуживания?

1 Ответ

2 голосов
/ 27 августа 2009

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

Я согласен с вышеупомянутым комментатором, что конструктор класса обслуживания должен избегать создания исключений. Если ваша служба работает с сеансом, вы можете рассмотреть проект, в котором вы выполняете этот тип инициализации как результат определенной операции службы. Это можно сделать в WCF, пометив такую ​​операцию службы с помощью « IsInitiating = true » в атрибуте [OperationContract]. В этот момент вы сможете сгенерировать ошибку и иметь некоторую надежду на то, что она достигнет предполагаемого клиента.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...