2010-03-22 2 views
0

J'ai implémenté IDispatchMessageInspector et dans la méthode AfterReceiveRequest je peux recevoir le nom de la méthode (action) qui appelle du client comme ceci request.Headers.Action. Puis-je trouver le nom du service où cette méthode a été implémentée? Par exemple j'ai le service Test et deux méthodes Start et Stop et request.Headers.Action pour cette méthode comme cette demande.Headers.Action "http://bla.my.com/Start" et "http://bla.my.com/Start" Comment puis-je trouvé le nom Test et possible ceci ou impossible?IDispatchMessageInspector :: AfterReceiveRequest Nom du service d'appel

+0

Comment "recevez-vous le nom de la méthode (action) qui appelle du client comme ceci' request.Headers.Action' "? Cela revient toujours null pour moi dans 'AfterReceiveRequest'. –

Répondre

0

J'ai trouvé une suggestion: instanceContext.GetServiceInstance() renvoie le nom du service où la méthode appelée a été implémentée.

1

La bonne réponse est request.Headers.To, car nous avons reçu un message du client TO service web et si nous analysons la propriété À nous allons connaître le nom du service. Et instanceContext.GetServiceInstance() est créé nouvelle instance de service et ce comportement incorrect pour retourner le nom du service.

Questions connexes