У меня проблемы с NetTcpBinding и тайм-аутами. Я знаю, что это можно решить, написав блок Try-Catch для каждого вызова службы, а в случае сбоя создайте новый канал с помощью ChannelFactory и повторите тот же вызов. Единственная проблема в том, что есть буквально сотни мест, где я должен был бы провести эту уродливую меру.
Я знаю, что должно быть лучшее решение. К сожалению, наследование не в моем случае. Аспекты будут работать, но реальной поддержки в .net для них нет.
Мне было интересно, можно ли расширить WCF (модель канала?) таким образом, чтобы в случае исключения тайм-аута канал автоматически регенерировался (или он пытался повторно подключиться), и тот же вызов выполнялся снова. Все за кадром.