2008-11-02 7 views
4

Dans mon application Web, je dois consigner tous les messages SOAP dans ma base de données SQL 2005 chaque fois que j'effectue un appel de service Web vers le service Web de mes partenaires. Comment puis-je accomplir cela?Comment consigner des messages XML SOAP (demande et réponse) dans la base de données SQL?

Merci à l'avance,

Tony

+0

Quelle langue/plateforme utilisez-vous? .NET? Si oui, quelle version du framework? Et si> = 2.0 WCF d'ASMX? –

+0

C# ASP.NET 2.0. Merci Greg. –

Répondre

3

Vous n'avez pas spécifié quelle langue vous utilisez, mais en supposant C#/.NET vous pouvez utiliser SOAP extensions pour obtenir le contenu SOAP comme une chaîne, puis utiliser un simple INSERT pour ajouter à une table DB arbitraire.

Il y a probablement des méthodes beaucoup plus élégantes mais j'ai implémenté ce qui précède et ça marche bien. N'oubliez pas d'avoir une grande taille de colonne dans la table DB, car la sortie SOAP peut être importante.

Note: semble être un bogue dans stackoverflow - l'URL est: http://msdn.microsoft.com/en-us/library/esw638yk(VS.71).aspx

+0

Merci beaucoup pour votre réponse. –

+0

J'ai besoin de trouver un moyen de déployer ma dll de consignation de messages SOAP de l'environnement DEV à l'environnement de production sans recompiler mon code. Où recommandez-vous de stocker les informations de la base de données? Registre ou app.config? Merci. –

+0

J'utilise aussi cette méthode, et bien que ce ne soit pas ce que j'appellerais élégant, il est solide comme le roc. – cori

0

Tenir compte en utilisant Log4net configuré avec un Appender qui cible la table de base de données.

Questions connexes