Как скрыть ошибку десериализации WCF в HTTP-ответе

Как я могу настроить сообщение об ошибке в ответе HTTP? Вместо приведенной ниже ошибки мне нужно показать пользовательское сообщение об ошибке в HTTP-ответе.

a: Ошибка десериализации. Форматер выдал исключение при попытке десериализации сообщения: произошла ошибка при попытке десериализации параметра https://test/Common:SearchCriteria. Сообщение InnerException было "Произошла ошибка десериализации объекта типа System.String. Байт 0x1D недопустим в этом месте. Строка 1, позиция 307.'. Пожалуйста, смотрите InnerException для более подробной информации.

1 ответ

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

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