WS_XML_WRITER_PROPERTY_ID enumeração (webservices.h)
Cada propriedade de gravador xml é identificada por uma ID e tem um valor associado. Essa enumeração é usada dentro da estrutura WS_XML_WRITER_PROPERTY, que é usada como um parâmetro para WsCreateWriter, WsSetOutput, WsSetOutputToBuffere WsWriteXmlBufferToBytes . Ele também é usado diretamente como um parâmetro para WsGetWriterProperty.
Sintaxe
typedef enum {
WS_XML_WRITER_PROPERTY_MAX_DEPTH = 0,
WS_XML_WRITER_PROPERTY_ALLOW_FRAGMENT = 1,
WS_XML_WRITER_PROPERTY_MAX_ATTRIBUTES = 2,
WS_XML_WRITER_PROPERTY_WRITE_DECLARATION = 3,
WS_XML_WRITER_PROPERTY_INDENT = 4,
WS_XML_WRITER_PROPERTY_BUFFER_TRIM_SIZE = 5,
WS_XML_WRITER_PROPERTY_CHARSET = 6,
WS_XML_WRITER_PROPERTY_BUFFERS = 7,
WS_XML_WRITER_PROPERTY_BUFFER_MAX_SIZE = 8,
WS_XML_WRITER_PROPERTY_BYTES = 9,
WS_XML_WRITER_PROPERTY_IN_ATTRIBUTE = 10,
WS_XML_WRITER_PROPERTY_MAX_MIME_PARTS_BUFFER_SIZE = 11,
WS_XML_WRITER_PROPERTY_INITIAL_BUFFER = 12,
WS_XML_WRITER_PROPERTY_ALLOW_INVALID_CHARACTER_REFERENCES = 13,
WS_XML_WRITER_PROPERTY_MAX_NAMESPACES = 14,
WS_XML_WRITER_PROPERTY_BYTES_WRITTEN = 15,
WS_XML_WRITER_PROPERTY_BYTES_TO_CLOSE = 16,
WS_XML_WRITER_PROPERTY_COMPRESS_EMPTY_ELEMENTS = 17,
WS_XML_WRITER_PROPERTY_EMIT_UNCOMPRESSED_EMPTY_ELEMENTS = 18
} WS_XML_WRITER_PROPERTY_ID;
Constantes
WS_XML_WRITER_PROPERTY_MAX_DEPTH Valor: 0 Um ULONG que especifica a profundidade máxima do documento que o gravador permitirá. A profundidade é medida a qualquer momento pelo número de elementos de início aninhados. Uma profundidade de 0 impede que qualquer elemento inicial seja gravado. Essa propriedade usa como padrão 32. |
WS_XML_WRITER_PROPERTY_ALLOW_FRAGMENT Valor: 1 Uma estrutura WS_XML_WRITER_MTOM_ENCODING que especifica se o gravador permitirá vários elementos e espaço não branco no nível superior do documento. Esta propriedade pode não ser definido como TRUE com WS_XML_WRITER_MTOM_ENCODING. Essa propriedade usa como padrão FALSE. |
WS_XML_WRITER_PROPERTY_MAX_ATTRIBUTES Valor: 2 Um ULONG o número máximo de atributos que o gravador permitirá em um elemento. Essa propriedade usa como padrão 128. |
WS_XML_WRITER_PROPERTY_WRITE_DECLARATION Valor: 3 Um BOOL que especifica se o gravador deve emitir uma declaração xml apropriada no início do documento. Essa propriedade usa como padrão FALSE. |
WS_XML_WRITER_PROPERTY_INDENT Valor: 4 Um ULONG que especifica quantos espaços de recuo devem ser usados para formatar o xml. Se o recuo for zero, nenhuma formatação ocorrerá. Essa propriedade usa como padrão 0. |
WS_XML_WRITER_PROPERTY_BUFFER_TRIM_SIZE Valor: 5 Um ULONG Se o gravador estiver usando WS_XML_WRITER_BUFFER_OUTPUT, essa propriedade será o número máximo de bytes o gravador manterá entre chamadas para WsSetOutput para fins de saída de buffer. Se o gravador estiver usando WS_XML_WRITER_STREAM_OUTPUT, essa propriedade será o número máximo de bytes o gravador manterá entre chamadas para WsSetOutput e WsFlushWriter para finalidades de saída de buffer. Essa propriedade não tem efeito quando especificada com WsSetOutputToBuffer. Essa propriedade usa como padrão 4096. |
WS_XML_WRITER_PROPERTY_CHARSET Valor: 6 Um valor WS_CHARSET que retorna o conjunto de caracteres que o gravador está usando para codificar o documento. Esse valor só está disponível para documentos de texto. |
WS_XML_WRITER_PROPERTY_BUFFERS Valor: 7 Uma estrutura WS_BUFFERS que retorna um conjunto de buffers que contêm os bytes xml gerados. Se o gravador estiver usando WS_XML_WRITER_BUFFER_OUTPUT, todos os bytes gerados serão retornados e os buffers são válidos até que WsSetOutput ou WsFreeWriter seja chamado. Se o gravador estiver usando WS_XML_WRITER_MTOM_ENCODING, não deverá haver elementos abertos. As partes MIME de suporte serão geradas e incluídas nos buffers retornados. Depois disso ocorre, qualquer API que tentar gravar mais no documento xml retornará WS_E_INVALID_OPERATION. (Consulte Valores retornados dos Serviços Web do Windows.) Essa propriedade não está disponível ao usar WS_XML_WRITER_STREAM_OUTPUT. Essa propriedade não está disponível em um gravador definido como um WS_XML_BUFFER. Isso pode ser menos conveniente, mas mais eficiente do que usar WS_XML_WRITER_PROPERTY_BYTES porque o O gravador não precisa concatenar os buffers que compõem o documento em um único buffer. |
WS_XML_WRITER_PROPERTY_BUFFER_MAX_SIZE Valor: 8 Um ULONG especifica o número máximo de bytes que o gravador armazenará em buffer. Se o gravador estiver usando WS_XML_WRITER_BUFFER_OUTPUT, esse será o número máximo de bytes que serão armazenados em buffer para todo o documento. As chamadas para WsFlushWriter não têm efeito. Se o gravador estiver usando WS_XML_WRITER_STREAM_OUTPUT, essa será a quantidade maxmimum de dados que serão armazenados em buffer entre chamadas de WsFlushWriter. Essa propriedade não tem efeito quando especificada com WsSetOutputToBuffer. |
WS_XML_WRITER_PROPERTY_BYTES Valor: 9 Uma estrutura WS_BUFFERS que retorna um único buffer que contém os bytes xml gerados. Se o gravador estiver usando WS_XML_WRITER_BUFFER_OUTPUT, todos os bytes gerados serão retornados e o buffer é válido até que WsSetOutput ou WsFreeWriter seja chamado. Se o gravador estiver usando WS_XML_WRITER_MTOM_ENCODING, não deverá haver elementos abertos. As partes MIME de suporte serão geradas e incluídas nos buffers retornados. Depois disso ocorre, qualquer API que tentar gravar mais no documento xml retornará WS_E_INVALID_OPERATION. Essa propriedade não está disponível ao usar WS_XML_WRITER_STREAM_OUTPUT. Essa propriedade não está disponível em um gravador definido como um WS_XML_BUFFER. Isso pode ser mais conveniente, mas menos eficiente do que usar WS_XML_WRITER_PROPERTY_BUFFERS porque o O gravador pode precisar concatenar os buffers que compõem o documento em um único buffer. |
WS_XML_WRITER_PROPERTY_IN_ATTRIBUTE Valor: 10 Um bool que indica que WsWriteStartAttribute foi chamado e o gravador é posicionado no conteúdo do atributo. |
WS_XML_WRITER_PROPERTY_MAX_MIME_PARTS_BUFFER_SIZE Valor: 11 Um ULONG será armazenado em buffer para fins de gravação das partes MIME. WsWriteBytes e WsPullBytes precisam armazenar dados em buffer para emitir os dados como uma parte MIME separada que segue o documento e isso pode ser usado para limitar o quanto é armazenado em buffer. Essa propriedade usa como padrão 65536. |
WS_XML_WRITER_PROPERTY_INITIAL_BUFFER Valor: 12 Uma estrutura WS_BYTES que contém um buffer que o gravador pode usar para codificar o documento xml. Isso é útil quando um limite superior no tamanho dos dados xml gerados é conhecido ou o chamador deseja possuir o buffer no qual os bytes são colocados. Se o tamanho especificado for maior ou igual a WS_XML_WRITER_PROPERTY_BUFFER_MAX_SIZE, o O gravador não alocará de seus buffers internos. Esse buffer pode aparecer como um dos buffers retornados pela propriedade WS_XML_WRITER_PROPERTY_BUFFERS ou WS_XML_WRITER_PROPERTY_BYTES. O chamador deve garantir que o buffer especificado seja válido para o tempo de vida do gravador. |
WS_XML_WRITER_PROPERTY_ALLOW_INVALID_CHARACTER_REFERENCES Valor: 13 Um BOOL de caracteres considerados inválidos por XML 1.0 a serem aceitos. Definir essa propriedade como TRUE pode afetar a interoperabilidade. Essa propriedade usa como padrão FALSE. |
WS_XML_WRITER_PROPERTY_MAX_NAMESPACES Valor: 14 Um ULONG que especifica o número máximo de declarações exclusivas de xmlns que podem aparecer no escopo a qualquer momento ao escrever o documento. Essa propriedade usa como padrão 32. |
WS_XML_WRITER_PROPERTY_BYTES_WRITTEN Valor: 15 Um ULONG Se o gravador estiver usando WS_XML_WRITER_BUFFER_OUTPUT, então essa propriedade retorna o número de bytes que foram gravados no gravador. Se o gravador estiver usando WS_XML_WRITER_STREAM_OUTPUT, essa propriedade retorna o número de bytes que foram gravados no gravador desde a última chamada para WsFlushWriter. Se o gravador estiver gravando uma marca inicial de elemento no momento, o tamanho da marca inicial não será incluído em o valor retornado. Essa propriedade não está disponível em um gravador que foi definido usando WsSetOutputToBuffer. |
WS_XML_WRITER_PROPERTY_BYTES_TO_CLOSE Valor: 16 Um ULONG que retorna o número máximo de bytes necessários para fechar quaisquer elementos abertos. Um aplicativo pode usar WS_XML_WRITER_PROPERTY_BYTES_WRITTEN e WS_XML_WRITER_PROPERTY_BYTES_TO_CLOSE para aproximar quanto adicional os dados podem ser gravados no documento. Ao fazer isso, o aplicativo deve levar em conta a codificação do documento que está sendo gravado. Essa propriedade não está disponível em um gravador que foi definido usando WsSetOutputToBuffer. |
WS_XML_WRITER_PROPERTY_COMPRESS_EMPTY_ELEMENTS Valor: 17 Um BOOL Quando essa propriedade é definida como FALSE, WsCopyNode preserva se cada elemento é representado como um par de marcas de início/término ou como um elemento vazio. Quando essa propriedade estiver definida como TRUE, WsCopyNode converter elementos sem conteúdo em elementos vazios. A codificação binária não dá suporte a elementos vazios. Ao usar WsCopyNode com um gravador que usa a codificação binária dessa propriedade não tem nenhum efeito de qualquer maneira. Todos os elementos vazios são convertido em elementos sem conteúdo. Por padrão, essa propriedade é FALSE. Para uma cadeia de caracteres XML de entrada como:
Se essa propriedade for FALSE, WsCopyNode gerará o seguinte xml:
Se essa propriedade for TRUE, WsCopyNode gerará o seguinte xml:
|
WS_XML_WRITER_PROPERTY_EMIT_UNCOMPRESSED_EMPTY_ELEMENTS Valor: 18 Windows 8 ou posterior: uma BOOL Se definido como FALSE, um elemento criado apenas por chamadas para WsWriteStartElement e WsWriteEndElement será emitido da seguinte maneira:
Se definido como TRUE, esse elemento será emitido da seguinte maneira: XML O padrão é FALSE |
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Windows 7 [aplicativos da área de trabalho | Aplicativos UWP] |
servidor com suporte mínimo | Windows Server 2008 R2 [aplicativos da área de trabalho | Aplicativos UWP] |
cabeçalho | webservices.h |