Bonjour,
Je suis actuellement confronté à un problème dans le cadre de la mise en place d'un service WCF. Ce service possède 3 endpoints avec behavior
- Json : <enableWebScript />
- Xml : <webHttp />
- Soap : Aucun behavior
Si j'utilise le DataContractSerializer ( serializer par default) avec mon service, il n'y a aucun problème. Les données sont retourné correctement en json et en xml.
Maintenant mon problème est le suivant : Avec le DataContractSerializer, je n'ai aucun controle sur la sortie de mon fichier xml (il met toutes mes données dans des element xml) ! Ce que je souhaite, c'est pouvoir mettre certaine données en attribut. Pour ce faire, j'ai alors décider de passer au XmlSerializer et d'utiliser XmlAttribute sur mes DataMember.
Cela fonctionne correctement et j'obtient maintenant des attributs en sortie de mon xml. MAIS, je suis obligé de désactivé le endpoint json car il ne supporte pas le XmlSerializer.
Erreur :
J'aimerais savoir comment je pourrais faire fonctionner mes 2 endpoints (json+xml) en utilisant XmlSerializer ??System.InvalidOperationException: Endpoints using 'XmlSerializerFormatAttribute' cannot be used with 'System.ServiceModel.Description.WebScriptEnablingBehavior'.
Merci d'avance pour vos réponses.
Partager