До сих пор я сталкивался с необходимостью воссоздания соединения WCF по ошибке - в противном случае, похоже, нет способа восстановить его. Что касается того, когда происходит сбой, кажется, что метод срабатывает нормально, но часто он запускает и очищает соединение WCF (устанавливает новое и т. Д.) По мере выполнения текущего запроса, что приводит к сбою, особенно в случае тайм-аута.
Пара предложений:
- Если это связано с тайм-аутом, отслеживайте последний раз, когда был сделан вызов, и постоянную, содержащую значение тайм-аута. Если соединение WCF было разорвано из-за неактивности, отбросьте его и создайте заново до , когда вы отправите запрос по проводной связи.
- С другой стороны, похоже, что вы не добавляете обработчик ошибок повторно, это означает, что первая ошибка будет обработана, но во второй раз, когда она обнаружит ошибки, она перестанет работать без обработчика, поскольку новый не был присоединен.
Надеюсь, это поможет