2009-08-11 5 views
0

Je suis novice dans le framework .NET (et je me considère plutôt comme un administrateur système) mais je crée un service Web qui doit renvoyer des données à un autre système. J'utilisais les valeurs par défaut du projet ASP.NET Web Service Application. Le problème que j'ai est que je ne peux pas trouver un paramètre pour utiliser une autre DTD. Donc, par défaut, le projet retourne quand je retourne un objet simple j'obtenir quelque chose comme çaUtilisation d'une autre DTD XML avec une application de service Web ASP.NET

<?xml version="1.0" encoding="utf-8"?> 
<foo xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://foo.com"> 
    <foo1>1</foo1> 
    <bar>2</bar> 
    <baz>3</baz> 
</foo> ` 

Quand ce que je voudrais vraiment quelque chose comme ça ...

<?xml version="1.0" encoding="ISO-8859-1"?> 
<!DOCTYPE ivr_info SYSTEM "http://www.mybz.com/xml/ivr.dtd"> 
<response> 
    <result> 
     <ivr_info> 
      <variables> 
       <variable> 
        <name>foo1</name> 
        <value>1</value> 
       </variable> 
       <variable> 
        <name>bar</name> 
        <value>2</value> 
       </variable> 
      </variables> 
     </ivr_info> 
    </result> 
</response> 

J'ai la DTD pour le nouveau format est-il un moyen d'importer cela dans un service Web ou dois-je descendre à un niveau plus bas et juste écrire et analyser les flux entrants? Merci d'avance pour toute information.

Répondre

0

Les services Web ASP.Net traitent toute la sérialisation xml en interne, ce qui explique pourquoi vous voyez la représentation standard que vous avez listée en premier.

Vous pouvez contrôler la sérialisation à l'aide de WCF. Cependant, cela implique de coder à des niveaux plus bas pour générer le type de sortie que vous recherchez.

Questions connexes