두 개의 응용 프로그램을 이중 WCF 연결로 연결했습니다. 연결이 일관성이있는 한 잘 작동합니다.이중 연결 WCF 재 연결 시나리오
연결이 끊어져 다시 연결해야하는 경우 재 연결 시나리오를 처리하는 방법을 지금 확인하고 있습니다. WCF에서이 작업을 수행하는 방법을 이해하는 데 어려움을 겪고 있습니다.
알고있는 한 IChannel
은 소모품이지만, ChannelFactory
은 비쌉니다. 그래서 하나의 팩토리를 만든 다음 채널을 만듭니다. 채널에서 Closed
또는 Faulted
이벤트를 감지 할 때마다 채널을 닫고 이벤트 핸들러를 분리 한 다음 다른 채널을 생성하십시오.
그러나 때때로 DuplexChannelFactory<T>.CreateChannel
뿐만 아니라 오류 발생,이 예외가 발생됩니다 때문에이 방법은 아주 잘 작동하지 않습니다 :
System.ServiceModel.CommunicationObjectAbortedException occurred
HResult=-2146233087
Message=The communication object, System.ServiceModel.InstanceContext, cannot be used for communication because it has been Aborted.
어떻게 이런 공장 자체가 이런 식으로 오류가 발생한 가져옵니다 가능성이 있습니까?
WCF에서 연결 해제/재 연결을 처리하는 올바른 방법은 무엇입니까? 이 부분에 대답하려고
이 질문은 불가지론자를 호스팅하고 있습니다. 재 연결에 접근하는 방법을 알고 싶습니다. – vtortola
설명해 주셔서 감사합니다. 나는 파트 1에 답하려고 노력했다. 내가 한 일을 기반으로 재 연결을 다루는 방법에 대한 나의 생각을 적어 보려고 할 것이다. –