Создать пользовательское исключение WebFaultException

Есть ли в службе REST WCF способ создания пользовательского исключения WebFaultException?

Сейчас я использую WebFaultException, но ответ не соответствует ожиданиям клиента. Поэтому я хотел бы создать пользовательское исключение WebFaultException, которое установит HttpStatusCode и добавит простое сообщение в тело ответа (на основе моей собственной структуры).

1 ответ

Решение

Я рекомендовал избегать изменения HtpStatusCode из пользовательского FaultException. Расширение сервисного поведения EndPoint является более надежным, потому что оно работает на EndpointDispatcher уровень, и позволяет вам проверять и изменять HttpStatusCode и тело сообщения перед отправкой ответа, а также добавление пользовательских свойств сообщения в ответ. Вам нужно будет добавить в вашем сервисе extensionExtensions web.config файл конечно.

Вы можете использовать следующую статью в качестве руководства (хотя она фокусируется на обработке заявленных исключений ошибок для клиентов Silverlight, но предпосылка аналогична)

Создание и обработка ошибок в Silverlight

Другие вопросы по тегам