Partager via


WsWriteStartAttribute, fonction (webservices.h)

Cette opération commence à écrire un attribut dans l’élément actuel. WsWriteStartElement doit être appelé avant qu’un attribut puisse être écrit. Une fois l’attribut démarré, la valeur de l’attribut peut être écrite à l’aide de WsWriteChars, WsWriteBytes ou WsWriteValue. L’attribut doit être terminé à l’aide de WsWriteEndAttribute.

Syntaxe

HRESULT WsWriteStartAttribute(
  [in]           WS_XML_WRITER       *writer,
  [in, optional] const WS_XML_STRING *prefix,
  [in]           const WS_XML_STRING *localName,
  [in]           const WS_XML_STRING *ns,
  [in]           BOOL                singleQuote,
  [in, optional] WS_ERROR            *error
);

Paramètres

[in] writer

Pointeur vers l’objet WS_XML_WRITER dans lequel l’attribut est écrit. Le pointeur doit référencer un objet Writer XML valide.

[in, optional] prefix

Pointeur WS_XML_STRING vers le préfixe à utiliser pour l’attribut . Si la valeur référencée par ce paramètre est NULL , l’enregistreur choisit un attribut.

[in] localName

Pointeur WS_XML_STRING vers le nom local utilisé par l’attribut . Il doit comporter au moins un caractère.

[in] ns

Pointeur WS_XML_STRING vers l’espace de noms à utiliser pour l’attribut.

Si aucun préfixe n’est spécifié, l’enregistreur peut utiliser un préfixe dans l’étendue lié à l’espace de noms spécifié ou il peut générer un préfixe et inclure un attribut XMLNS.

Si un préfixe est spécifié, l’enregistreur utilise ce préfixe et peut inclure un attribut XMLNS si nécessaire pour remplacer un préfixe existant dans l’étendue.

[in] singleQuote

Détermine s’il faut utiliser un guillemet simple ou un guillemet double pour la valeur d’attribut.

Note Avec WS_XML_WRITER_BINARY_ENCODING le caractère de guillemet n’est pas conservé et ce paramètre n’a aucun effet.
 

[in, optional] error

Pointeur vers un objet WS_ERROR où des informations supplémentaires sur l’erreur doivent être stockées en cas d’échec de la fonction.

Valeur retournée

Cette fonction peut retourner l’une de ces valeurs.

Code de retour Description
E_INVALIDARG
Un ou plusieurs arguments ne sont pas valides.
WS_E_INVALID_OPERATION
L’opération n’est pas autorisée en raison de l’état actuel de l’objet.
WS_E_INVALID_FORMAT
Les données d’entrée n’étaient pas au format attendu ou n’avaient pas la valeur attendue.
WS_E_QUOTA_EXCEEDED
Un quota a été dépassé.

Remarques

Si un préfixe NULL est spécifié, l’enregistreur choisit un préfixe pour l’espace de noms.

Pour écrire un attribut « xml :lang » ou « xml :space », spécifiez « xml » pour le préfixe, « lang » ou « space » pour localName et «http://www.w3.org/XML/1998/namespace" ; pour l’espace de noms.

Si l’écriture de l’attribut entraîne le dépassement de WS_XML_WRITER_PROPERTY_MAX_ATTRIBUTES , WS_E_QUOTA_EXCEEDED est retourné.

Si un préfixe non vide est spécifié avec un espace de noms vide WS_E_INVALID_FORMAT est retourné. (Voir Valeurs de retour des services Web Windows.)

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 7 [applications de bureau | Applications UWP]
Serveur minimal pris en charge Windows Server 2008 R2 [applications de bureau | Applications UWP]
Plateforme cible Windows
En-tête webservices.h
Bibliothèque WebServices.lib
DLL WebServices.dll