Question

Nous essayons de créer un service web que nous avons prévu de passer une variable d'un montant de variables à elle.

Cela peut-il être fait?

Fondamentalement, au lieu de passer tous les paramètres possibles, nous souhaitons passer seulement l'ensemble de valeurs et d'utiliser les paramètres par défaut définis dans le service web.

Voici un exemple de XML nous sommes à la recherche d'envoyer, nous a envoyé une quantité inconnue de fonctions selon le besoin de retour.

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <WebMethod xmlns="http://tempuri.org/">
      <domains>
        <function1>
        <title>Some Title</title>
        <type>25</type>
        </function1>
    <function2 />
    <function3>
        <param>13</param>
    </function3>
      </domains>
    </WebMethod>
  </soap:Body>
</soap:Envelope>

Sera-ce de travailler ou doit-on le faire d'une manière différente?

Était-ce utile?

La solution

J'aimerais passer dans un document xml au lieu de faire concreate fonctions pour cela.

Le webservice dans votre exemple, qui fuit le consommateur a besoin de trop en savoir sur cette interface et la mise en œuvre du webservice en interne.

Document XML, puis un lien avec un XSD.De cette façon, vous pouvez prevalidte l'entrée vers le webservice.

Jetez un oeil à ces

IBM Developer ASP.NET Forum

Je vous recommande également l'utiliser pour tester des services web et libre WSStudio

Autres conseils

Vous pouvez tout simplement passer à une longueur variable tableau comme paramètre.

Si vous n'aimez pas l'idée d'un Tableau (ce n'est pas slating Konrad répondez - vous peut-être différentes des param types de), vous pouvez passer des objets complexes (c'est à direles objets que vous avez fait vous-même)..L'inconvénient est que vous ne pouvez pas test à l'aide de la ASMX page, mais besoin de faire tout cela dans le code (ce qui n'est pas vraiment une mauvaise chose, surtout si vous êtes habitué à ça).

Je suis d'accord avec littlegeek.Ne faites pas de votre service web est dur de méthode.Faire une fin de réception de point de recevoir messages.En particulier, un Message de Commande.

http://www.eaipatterns.com/CommandMessage.html

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top