Я работаю над прототипом, используя службы маршрутизации WCF 4 для создания проходного маршрутизатора, используя функциональность обработки ошибок
У меня есть требование, когда служба WCF генерирует пользовательское исключение (в этом сценарии этоназывается notPrimaryException), оно должно обрабатываться так же, как исключение связи обрабатывается в обработке ошибок служб маршрутизации WCF4, то есть сообщение должно повторно отправляться конечным точкам в списке резервного копирования.
ТеперьЯ понимаю, что это пользовательское исключение возвращается службой маршрутизатору как исключение сбоя на уровне сообщений, а не коммуникационное исключение, возвращаемое на транспортном уровне.
Я пытался использовать инспекторы сообщений и IErrorHandlerинтерфейс (ProvideFault и Handle Error), чтобы определить, возникает ли notPrimaryException на маршрутизаторе, но ничего не принимается до тех пор, пока он не вернется к клиенту в качестве необработанного исключения ошибки.Я надеялся перехватить эту ошибку где-нибудь на маршрутизаторе и повторно отправить сообщение соответствующим образом, но я не знаю, есть ли какие-либо подходящие варианты поведения.
Есть ли способ включить дополнительные типы исключений / ошибок в обработку ошибокинфраструктура или есть другой подход, который я мог упустить из виду?
Спасибо и С уважением,
Иван