2017-09-18 6 views
0

J'ajoute des fonctionnalités à un service Web asmx existant. Tout fonctionne comme prévu, sauf dans un scénario. Dans une requête, j'ai saisi par erreur une lettre dans un nom d'élément. Voir le balisage ci-dessous; au lieu de « Code postal », je mets « PostCode »Caractères en majuscules dans l'élément de demande SOAP

<Sites> 
    <Site> 
     <ID>123456</ID> 
     <Name>123 Road Street</Name> 
     <Status>Approved</Status> 
     <PostCode>SW12R 55R</PostCode>    
    </Site> 
</Sites> 

Le message d'erreur que je suis rentré du service indiqué un champ non valide ou manquant, mais la seule différence est que le capital C. Si je l'utilise « Code postal » ou "code postal", la requête passe sans problème.

Est-ce une particularité des services Web ASMX, ou quelque chose de commun aux services Web SOAP?

Répondre

1

Cela dépend du comportement du service et de ce qu'il y a dans le code côté serveur. Mais en général, c'est un comportement attendu en considérant XML Tags are Case Sensitive. Here is more detail on it

+0

Bravo pour ça. Cela semble la réponse probable, donc je vais marquer cela comme la réponse. Je soupçonne qu'il a aussi à voir avec les champs dans le mappage de balisage pour les propriétés dans les objets .NET qu'ils sont désérialisés. – dbr