Я хотел бы знать для службы WCF в методе BeforeSendReply
реализации IDispatchMessageInspector
, могу ли я получить доступ к сообщению об ошибке из любых необработанных исключений.
Справочная информация ...
Я работаю со службой WCF REST, которая поддерживает корпоративное приложение для iPad. Я добавляю инспектора сообщений, чтобы мы могли регистрировать все запросы API и ответы в базе данных. В идеале, если произошла ошибка, когда я записываю запись журнала в БД, я хотел бы пометить запись как ErrorFlag = true и включить как можно более подробное сообщение об ошибке, как я могу получить в поле ErrorMsg. Внутри каждого метода API мы уже ведем обширную регистрацию с использованием log4Net, и мы предупреждаем об ошибках из этих файлов журнала, поэтому полное исключение, как правило, регистрируется в текстовом файле журнала. Когда я захожу в базу данных из этого нового инспектора сообщений, я также хотел бы иметь возможность узнать, было ли какое-либо необработанное исключение, каково было сообщение об ошибке. Мне на самом деле не нужна трассировка стека, только часть сообщения, чтобы я мог запросить в SQL и посмотреть, сколько раз встречается определенный тип ошибки.
В идеале у меня был бы доступ к HttpContext.Current.Error
, нок сожалению, это не доступно ко времени BeforeSendReply
пожаров.