IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Web service avec un paramètre d'entrer XML


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Mars 2006
    Messages
    492
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 492
    Par défaut Web service avec un paramètre d'entrer XML
    Bonjour,

    J'ai réalisé un web service qui prend en paramètre d'entrer un XML :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    [WebMethod]
            public string GetFirstName(XmlDocument mm)
            {
                // Create a new XmLDocument object.
                XmlDocument XmlDocumentObject = new XmlDocument();
     
                // Load the XmlNode into the XmlDocument object.
                XmlDocumentObject.LoadXml(mm.OuterXml);
     
                // Find the first name of the author.
                XmlNodeList XmlNodeListObj = XmlDocumentObject.GetElementsByTagName("first-name");
     
                // Return the first name.
                return XmlNodeListObj[0].ChildNodes[0].Value;
            }
    Sauf que quand je fais appel à mon web servie :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
     
     public static XmlDocument GetXmlDocument()
            {
                // Create an XmlDocument object.
                XmlDocument xmlDocumentObject = new XmlDocument();
     
                xmlDocumentObject.LoadXml("<book genre=\"novel\" publicationdate=\"1997\" " +
                "      ISBN=\"1-861001-57-5\">" +
                "  <title>Pride And Prejudice</title>" +
                "  <author>" +
                "    <first-name>Jane</first-name>" +
                "    <last-name>Austen</last-name>" +
                "  </author>" +
                "  <price>24.95</price>" +
                "</book>");
     
     
                // Return the created XmlDocument object.
                return (xmlDocumentObject);
            }
            static void Main(string[] args)
            {
                XmlDocument xml = GetXmlDocument();
                ServiceReference1.Service1SoapClient rr = new ConsoleApplication1.ServiceReference1.Service1SoapClient();
                string gg = rr.GetFirstName(xml);
            }
    j'ai une erreur de compilation :
    Erreur 2 Argument '1'*: impossible de convertir de 'System.Xml.XmlDocument' en 'System.Xml.XmlElement'
    Merci infiniment de votre aide.

  2. #2
    Membre confirmé Avatar de Klivor
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    143
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 143
    Par défaut
    Tu as essayé de caster ton objet ?

  3. #3
    Membre éclairé
    Inscrit en
    Mars 2006
    Messages
    492
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 492
    Par défaut
    Citation Envoyé par Klivor Voir le message
    Tu as essayé de caster ton objet ?
    Comment peut on faire cela ? Merci beaucoup.

  4. #4
    Membre confirmé Avatar de Klivor
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    143
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 143
    Par défaut
    Tu mets entre () le type de cast que tu ve effectuer et l'objet auquel tu veux l'appliquer juste apres .
    ex: int toto = 2 renvoi un integer

    (String) toto va te renvoyer un string sous forme "2".

  5. #5
    Membre éclairé
    Inscrit en
    Mars 2006
    Messages
    492
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 492
    Par défaut
    Citation Envoyé par Klivor Voir le message
    Tu mets entre () le type de cast que tu ve effectuer et l'objet auquel tu veux l'appliquer juste apres .
    ex: int toto = 2 renvoi un integer

    (String) toto va te renvoyer un string sous forme "2".
    J'ai fais ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    XmlElement myElement = (XmlElement)myXMLNodeObject;
    et effectivement, ça marchote

  6. #6
    Membre confirmé Avatar de Klivor
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    143
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 143
    Par défaut
    Citation Envoyé par abbd Voir le message
    J'ai fais ça :

    [CODE]
    XmlElement myElement = (XmlElement)myXMLNodeObject;
    [\CODE]

    et effectivement, ça marchote
    Bah tu vois
    Affaire résolue.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Web service avec paramètre type ArrayofString
    Par matrix12 dans le forum Développement de jobs
    Réponses: 4
    Dernier message: 05/03/2013, 14h51
  2. Appel d'un web service avec des paramètres
    Par pussyycat dans le forum Services Web
    Réponses: 3
    Dernier message: 04/07/2012, 15h38
  3. Réponses: 3
    Dernier message: 11/03/2011, 11h25
  4. [Axis 2] : pb appel web services avec paramètre à null
    Par Foub dans le forum Services Web
    Réponses: 1
    Dernier message: 06/01/2009, 07h31
  5. Réponses: 2
    Dernier message: 23/05/2008, 15h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo