2010-09-19 5 views
0

J'ai un client WCF avec un comportement personnalisé qui intercepte la requête SOAP. Dans BeforeSendRequest dans le client, j'obtiens la requête SOAP et la passe à un autre WS en tant que paramètre. L'autre WS poste l'enveloppe SOAP sur le service réel que le client veut appeler et renvoie la réponse SOAP au client. Ainsi, dans BeforeSendRequest, le service intermédiaire retourne la vraie réponse SOAP en tant que chaîne au client. Comment puis-je définir la réponse SOAP retournée (soapResponse) comme réponse réelle dans le client?set Réponse au client de SOAP Envelope

quelqu'un L'espoir peut aider :)

Merci, Adrya

Répondre

1

Vous pourriez sauver « soapResponse » à une variable membre de l'inspecteur et le remettre à afterReceiveReply.

Mais pourquoi faites-vous semblant de faire appel à ce service? Ne pourriez-vous pas simplement appeler l'autre service Et ne pas avoir à faire la tricherie de l'inspecteur?

+0

Merci :) mais comment définir ce SOAPEnvelope qui vient en tant que chaîne en réponse qui est un message? Je dois le faire de cette façon parce que c'est ce que le projet est ... (envoie des messages de différents clients à différents services, mais avant de l'envoyer dans myotherProxy.CallService il fait des contrôles et autorise seulement l'appel si les contrôles sont OK) – Adrya

+0

votre méthode CallService retourne un message SOAP à la place? Ou vous pourriez essayer de faire passer le message de la chaîne de savon. (voir http://msdn.microsoft.com/en-us/library/system.web.services.description.message(v=VS.90).aspx) – JamesMLV

Questions connexes