현재 WCF - WSIT 통합 작업을하고 있습니다. WS-ReliableMessaging WCF 및 ws2007HttpBinding 함께 사용하고 있습니다.WCF ReliableMessaging - SessionId를 사용하여 기존 OperationContext에 연결
신뢰할 수있는 세션이 올바르게 설정되어 있고 InstanceContextMode.PerSession을 사용하고 있으며 1 분 동안 사용하지 않으면 서비스 인스턴스가 종료됩니다.
내 관심사는 기존 OperationContext의 SessionId로 초기화 된 WCF 프록시를 어떻게 만들 수 있는지 잘 모르겠다는 것입니다. Visual Studio 생성 된 프록시가 SessionId를 생성자 등으로 받아들이지 않는 것 같습니다.
프록시 클라이언트가 죽어서 다시 만들어야하는 경우에도 SessionI를 사용하여 활성 서비스에 다시 연결할 수 있기를 원합니다. .
빠른 응답을 보내 주셔서 감사합니다. 나는 몇 가지 검사를했고 당신은 옳은 것 같습니다. sessionId는 채널을 열 때 설정되며 아무리 깊게 파고 있어도 변경할 수 없습니다. 여기에서 해결하려고하는 문제는 오류 처리가 아니라 세션 관리와 관련이 있습니다. 실행중인 서비스에서 클라이언트를 분리하고 다시 연결할 수 있기를 바랍니다. –
내 클라이언트가 연결이 끊긴 후 클라이언트가 다시 연결할 수없는 경우 잠시 동안 내 서비스 인스턴스가 살아 있고 머리가없는 닭처럼 작동하는 것처럼 보입니다. 클라이언트 측에서 쿠키를 파싱하고 다시 연결한다는 의미로 서비스 상태의 상태를 유지하기 위해 ASP 세션 또는 비슷한 것을 사용해야 할 것입니다. –
나는 그것을 감당할 수 없다. 처리되지 않은 예외로 인해 서비스 파트가 종료되므로 서비스와 통신하려면 새 클라이언트 프록시를 열어야합니다. –