2010-03-22 2 views
0

IDispatchMessageInspector을 구현했으며 AfterReceiveRequest 메서드에서 this라는 클라이언트에서 호출하는 메서드 (동작)의 이름을 request.Headers.Action과 같이받을 수 있습니다. 이 메소드가 구현 된 서비스의 이름을 찾을 수 있습니까? 예를 들어 나는 "http://bla.my.com/Start"이 request.Headers.Action 같은이 방법에 대한 서비스 Test 및 두 가지 방법 StartStop 및 request.Headers.Action을 가지고 "http://bla.my.com/Start"어떻게 이름 Test 가능한이 불가능하거나 발견 할 수 있습니까?IDispatchMessageInspector :: AfterReceiveRequest 호출 서비스 이름

+0

"request.Headers.Action'"와 같이 클라이언트에서 호출하는 메소드 (작업)의 이름을 어떻게 받습니까? 이것은 항상 AfterReceiveRequest에서 null을 반환합니다. –

답변

0

내가 발견 한 제안 : instanceContext.GetServiceInstance()은 구현 된 호출 된 메소드의 서비스 이름을 반환합니다. 우리가 웹 서비스 클라이언트 에서 메시지를받은 우리는에게 재산 을 분석하면 우리는 서비스의 이름을 알고려고하고 있기 때문에

1

정답은, request.Headers.To입니다. 그리고 instanceContext.GetServiceInstance()은 새로운 서비스 인스턴스와 서비스 이름 반환을위한이 잘못된 동작을 만듭니다.