2009-12-14 5 views
0

Je souhaite créer un service WCF qui accepte un message XML qui interagit avec un consommateur non MS. Maintenant, je pourrais exposer une méthode qui accepte une chaîne, puis gérer le XML à partir de ce point. Y a-t-il une meilleure approche que d'utiliser un paramètre de chaîne?Service WCF pour recevoir le message XML

Merci

+0

oui - recevoir des paramètres et des objets représentant ce message XML, au lieu du message brut lui-même ...... –

Répondre

0

Vous pouvez utiliser un paramètre XmlNode.

+0

Est-ce que je ne puis avoir à utiliser des contrats de données? Je veux juste être en mesure de recevoir n'importe quel type de XML, puis effectuer une validation XML et schéma après avoir reçu le XML. –

+0

Je ne pense pas - il suffit d'utiliser un XmlNode à la place d'une chaîne. – Justin

+1

Vous vous retrouvez avec l'erreur suivante Le type 'System.Xml.XmlNode' ne peut pas être sérialisé. Pensez à le marquer avec l'attribut DataContractAttribute et à marquer tous les membres que vous souhaitez sérialiser avec l'attribut DataMemberAttribute. Consultez la documentation de Microsoft .NET Framework pour les autres types pris en charge. –

0

Vous pouvez utiliser un paramètre XmlElement ou XElement. Utilisez XmlElement si vous souhaitez utiliser l'espace de noms System.Xml pour traiter le code XML. Utilisez XElement si vous souhaitez utiliser LINQ to XML et l'espace de noms System.Xml.Linq.

--Jacob