Bonjour,

J'ai ajouté une webreference à mon projet en utilisant le Wsdl fourni par un éditeur. Cela m'expose dans Visual Studio les classes et les méthodes disponibles.
J'appelle des méthodes et cela fonctionne correctement.

Mon problème est que certaines méthodes nécessitent d'ajouter des éléments dans l'en-tête Soap de la requête et je n'y arrive pas.
J'ai pas mal cherché sur le net et j'ai trouvé ceci.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
Public Class myHeader
    Inherits SoapHeader
    Public context As string
End Class
Protected Overrides Function GetWriterForMessage(ByVal message As SoapClientMessage, ByVal bufferSize As Integer) As System.Xml.XmlWriter
            Dim header As New myHeader
            header.context = "test"
            message.Headers.Add(header )
            Return MyBase.GetWriterForMessage(message, bufferSize)
    End Function
Lorsque j'appelle mon web service je passe bien dans la fonction GetWriterForMessage. Le retour du web service me dit que context n'est pas défini.

Savez-vous comment intégrer des éléments dans l'en-tête de l'enveloppe Soap ?

Question subsidiaire : est-il possible de tracer les requêtes soap qui partent de mon application ? Peut être qu'en les voyant le problème me sautera aux yeux ... Là aussi j'ai beaucoup cherché (interface IEndpointBehavior notamment) mais je n'arrive pas à les mettre en œuvre.

Merci d'avance