2009-05-05 6 views
1

J'utilise cette ligne pour enregistrer une classe avec le registre Delphi pour les éléments de savon:Comment puis-je modifier les noms d'éléments SOAP en mots réservés dans Delphi?

RemClassRegistry.RegisterXSClass(ToHeader, ADD_URI); 

Dans le message de demande de savon, je vois ceci:

<NS1:ToHeader> ... </NS1:ToHeader> 

Est-il possible de modifier l'enregistrement de classe de sorte qu'il rend l'élément avec un nom différent, comme:

<NS1:To> ... </NS1:To> 

ou est la seule façon de modifier le flux de demande?

To est un mot réservé dans Delphi, je ne peux pas renommer la classe au nom de l'élément 'To'.

Répondre

4

On dirait que c'est ce que le troisième paramètre est pour. Essayez ceci:

RemClassRegistry.RegisterXSClass(ToHeader, ADD_URI, 'To'); 

A partir de Delphi 8, vous pouvez utiliser de mots réservés aux identificateurs. Utilisez & comme caractère d'échappement ou utilisez un nom qualifié complet:

type 
    &To = class; 

RemClassRegistry.RegisterXSClass(UnitName.To, Add_URI); 
+0

L'aide &. Je ne suis pas sûr de la signification du troisième paramètre, mais l'ai déjà essayé sans effet visible. Merci beaucoup pour votre contribution! – mjn

Questions connexes