4 votes

Renvoyer du XML à partir d'un service Web

J'ai un fichier XML qui se trouve sur le disque dur d'un serveur qui exécute mon service Web. J'ai besoin d'accéder à ce fichier depuis une autre application.

Voici ma méthode sur mon service Web

Public Function getXMLFile()
    Dim xmlDocument As System.Xml.XmlDocument

    xmlDocument = New System.Xml.XmlDocument()
    xmlDocument.Load("C:\Sommaire.xml")

    Return xmlDocument
End Function

Lorsque je navigue vers mon service Web et que j'essaie d'invoquer ma méthode, j'obtiens l'erreur suivante :

System.InvalidOperationException : Une erreur s'est produite lors de la génération du document XML. ---> System.InvalidOperationException : Le type System.Xml.XmlDocument ne peut pas être utilisé dans ce contexte.

Cela se produit lorsque j'essaie de renvoyer le xmlDocument objet

D'après les informations que j'ai recueillies, c'est comme si SOAP voulait envelopper mon XML dans plus de XML et m'empêchait de le faire.

Comment puis-je obtenir le fichier XML de mon service Web si je ne peux pas renvoyer le XML ?

6voto

David Stratton Points 45298

Votre fonction ne spécifie pas de type de retour, pourtant vous essayez de retourner un objet de type System.Xml.XmlDocument.

Changement

Public Function getXMLFile() 

a

Public Function getXMLFile() AS System.Xml.XmlDocument

Tout l'extrait comme il se doit :

Public Function getXMLFile()  AS System.Xml.XmlDocument
    Dim xmlDocument As System.Xml.XmlDocument

    xmlDocument = New System.Xml.XmlDocument()
    xmlDocument.Load("C:\Sommaire.xml")

    Return xmlDocument
End Function

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X