У меня есть простой сервис WCF, с которым я общаюсь асинхронно.
Мне не нравится, когда я вызываю EndServiceMethod(IASyncResult)
, если я забыл вызвать Close()
метод, служба фактически оставит соединение открытым, а затем все оставшиеся соединения потерпят неудачу после того, как wcf достигнет максимального числа одновременных соединений с исключениями тайм-аута.
Я пытался использовать атрибут [ServiceBehavior(InstanceContextMode=InstanceContextMode.PerCall)]
для контракта на обслуживание, который, по-видимому, не влияет на состояние соединения со службой.
Возможно, я неправильно это реализовал?
Любые идеи или предложения.
Я пытаюсь найти шаблон поведения для WCF, который позволяет клиентам сделать запрос, а затем сервер, чтобы ответить на запрос и затем предположить,что соединение завершено и может быть разорвано.