перечисление WS_XML_WRITER_PROPERTY_ID (webservices.h)
Каждое свойство модуля записи XML идентифицируется идентификатором и имеет связанное значение. Это перечисление используется в структуре WS_XML_WRITER_PROPERTY , которая используется в качестве параметра для WsCreateWriter, WsSetOutput, WsSetOutputToBuffer и WsWriteXmlBufferToBytes. Он также используется непосредственно в качестве параметра для WsGetWriterProperty.
Синтаксис
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;
Константы
WS_XML_WRITER_PROPERTY_MAX_DEPTH Значение: 0 Значение ULONG, указывающее максимальную глубину документа, разрешенную модулем записи. Глубина измеряется в любой точке по количеству вложенных начальных элементов. Глубина 0 предотвращает запись начальных элементов. Это свойство по умолчанию — 32. |
WS_XML_WRITER_PROPERTY_ALLOW_FRAGMENT Значение: 1 Структура WS_XML_WRITER_MTOM_ENCODING , указывающая, будет ли модуль записи разрешать несколько элементов и пробелов на верхнем уровне документа. Это свойство Для WS_XML_WRITER_MTOM_ENCODING может не быть задано значение TRUE. Это свойство по умолчанию имеет значение FALSE. |
WS_XML_WRITER_PROPERTY_MAX_ATTRIBUTES Значение: 2 ULONG, указывающий максимальное количество атрибутов, разрешенных модулем записи для элемента. Это свойство по умолчанию — 128. |
WS_XML_WRITER_PROPERTY_WRITE_DECLARATION Значение: 3 Значение ТИПА BOOL , указывающее, должен ли модуль записи выдавать соответствующее xml-объявление в начале документа. Это свойство по умолчанию имеет значение FALSE. |
WS_XML_WRITER_PROPERTY_INDENT Значение: 4 Значение ULONG, указывающее, сколько пробелов отступа должно использоваться для форматирования xml. Если отступ равен нулю, форматирование не происходит. Это свойство по умолчанию — 0. |
WS_XML_WRITER_PROPERTY_BUFFER_TRIM_SIZE Значение: 5 Значение ULONG, указывающее одно из следующих элементов. Если модуль записи использует WS_XML_WRITER_BUFFER_OUTPUT, это свойство является максимальным числом байтов. модуль записи будет храниться в вызовах WsSetOutput для буферизации выходных данных. Если модуль записи использует WS_XML_WRITER_STREAM_OUTPUT, это свойство является максимальным числом байтов. модуль записи будет сохраняться в вызовах WsSetOutput и WsFlushWriter для назначение буферизации выходных данных. Это свойство не действует при указании wsSetOutputToBuffer. Это свойство по умолчанию — 4096. |
WS_XML_WRITER_PROPERTY_CHARSET Значение: 6 Значение WS_CHARSET, возвращает набор символов, который модуль записи использует для кодирования документа. Это значение доступно только для текстовые документы. |
WS_XML_WRITER_PROPERTY_BUFFERS Значение: 7 Структура WS_BUFFERS возвращает набор буферов, содержащих созданные xml-байты. Если модуль записи использует WS_XML_WRITER_BUFFER_OUTPUT, возвращаются все созданные байты. буферы действительны до вызова WsSetOutput или WsFreeWriter . Если модуль записи использует WS_XML_WRITER_MTOM_ENCODING, то открытых элементов не должно быть. Вспомогательные части MIME будут созданы и включены в возвращаемые буферы. После этого любой API, который пытается записать в xml-документ, возвращает WS_E_INVALID_OPERATION. (См. раздел Возвращаемые значения веб-служб Windows.) Это свойство недоступно при использовании WS_XML_WRITER_STREAM_OUTPUT. Это свойство недоступно для модуля записи, для WS_XML_BUFFER. Это может быть менее удобным, но более эффективным, чем использование WS_XML_WRITER_PROPERTY_BYTES потому что Модуль записи не должен сцеплять буферы, составляющие документ, в один буфер. |
WS_XML_WRITER_PROPERTY_BUFFER_MAX_SIZE Значение: 8 ULONG, задает максимальное число байтов, которые модуль записи будет буферистить. Если модуль записи использует WS_XML_WRITER_BUFFER_OUTPUT, это максимальное число байты, которые будут помещены в буфер для всего документа. Вызовы WsFlushWriter не оказывают никакого влияния. Если модуль записи использует WS_XML_WRITER_STREAM_OUTPUT, это максимальное значение данные, которые будут помещены в буфер между вызовами WsFlushWriter . Это свойство не действует при указании wsSetOutputToBuffer. |
WS_XML_WRITER_PROPERTY_BYTES Значение: 9 Структура WS_BUFFERS возвращает один буфер, содержащий созданные xml-байты. Если модуль записи использует WS_XML_WRITER_BUFFER_OUTPUT, возвращаются все созданные байты, и буфер действителен до вызова WsSetOutput или WsFreeWriter . Если модуль записи использует WS_XML_WRITER_MTOM_ENCODING, то открытых элементов не должно быть. Вспомогательные части MIME будут созданы и включены в возвращаемые буферы. После этого любой API, который пытается записать в xml-документ, возвращает WS_E_INVALID_OPERATION. Это свойство недоступно при использовании WS_XML_WRITER_STREAM_OUTPUT. Это свойство недоступно для модуля записи, для WS_XML_BUFFER. Это может быть более удобным, но менее эффективным, чем использование WS_XML_WRITER_PROPERTY_BUFFERS , так как Может потребоваться сцепить буферы, составляющие документ, в один буфер. |
WS_XML_WRITER_PROPERTY_IN_ATTRIBUTE Значение: 10 ЛОГИЧЕСКОЕ ЗНАЧЕНИЕ, которое указывает, что был вызван WsWriteStartAttribute , а модуль записи — позиционируется в содержимом атрибута. |
WS_XML_WRITER_PROPERTY_MAX_MIME_PARTS_BUFFER_SIZE Значение: 11 ULONG, используемый с WS_XML_WRITER_MTOM_ENCODING. Указывает максимальный объем данных, будет помещена в буфер для записи частей MIME. WsWriteBytes и WsPullBytes необходимо буферировать данные, чтобы выдавать данные в виде отдельной части MIME, которая следует документу, и его можно использовать для ограничения объема буферизации. Это свойство по умолчанию — 65536. |
WS_XML_WRITER_PROPERTY_INITIAL_BUFFER Значение: 12 Структура WS_BYTES , содержащая буфер, который модуль записи может использовать для кодирования xml-документа. Это полезно, если известна верхняя граница размера созданных xml-данных или вызывающий объект хочет владеть буфер, в котором размещаются байты. Если указанный размер больше или равен WS_XML_WRITER_PROPERTY_BUFFER_MAX_SIZE, то Модуль записи не выделяется из своих внутренних буферов. Этот буфер может отображаться как один из буферов, возвращаемых свойством WS_XML_WRITER_PROPERTY_BUFFERS или WS_XML_WRITER_PROPERTY_BYTES. Вызывающий объект должен убедиться, что указанный буфер действителен в течение времени существования модуля записи. |
WS_XML_WRITER_PROPERTY_ALLOW_INVALID_CHARACTER_REFERENCES Значение: 13 ЛОГИЧЕСКОЕ ЗНАЧЕНИЕ, используемое с WS_XML_WRITER_TEXT_ENCODING. Если задать значение TRUE , ссылки на символы разрешены. символов, которые считаются недопустимыми в XML 1.0 для принятия. Установка для этого свойства значения TRUE может повлиять на взаимодействие. Это свойство по умолчанию имеет значение FALSE. |
WS_XML_WRITER_PROPERTY_MAX_NAMESPACES Значение: 14 ULONG, указывающее максимальное число уникальных объявлений xmlns, которые могут отображаться в область в любой момент. при написании документа. Это свойство по умолчанию — 32. |
WS_XML_WRITER_PROPERTY_BYTES_WRITTEN Значение: 15 Значение ULONG, указывающее одно из следующих элементов. Если модуль записи использует WS_XML_WRITER_BUFFER_OUTPUT, то это свойство возвращает число байтов, записанных в модуль записи. Если модуль записи использует WS_XML_WRITER_STREAM_OUTPUT, то это свойство возвращает количество байтов, записанных в модуль записи с момента последнего вызова WsFlushWriter. Если модуль записи в настоящее время записывает начальный тег элемента, размер начального тега не включается в возвращаемое значение. Это свойство недоступно для модуля записи, заданного с помощью WsSetOutputToBuffer. |
WS_XML_WRITER_PROPERTY_BYTES_TO_CLOSE Значение: 16 ULONG, возвращающее максимальное количество байтов, необходимое для закрытия всех открытых элементов. Приложение может использовать WS_XML_WRITER_PROPERTY_BYTES_WRITTEN и WS_XML_WRITER_PROPERTY_BYTES_TO_CLOSE приблизительное количество дополнительных данные могут быть записаны в документ. При этом приложение должно учитывать кодировка записываемого документа. Это свойство недоступно для модуля записи, заданного с помощью WsSetOutputToBuffer. |
WS_XML_WRITER_PROPERTY_COMPRESS_EMPTY_ELEMENTS Значение: 17 BoOL, который определяет, как WsCopyNode копирует элементы без содержимого. Если для этого свойства задано значение FALSE, WsCopyNode сохраняет, представлен ли каждый элемент. как пара тегов start/end или как пустой элемент. Если для этого свойства задано значение TRUE, WsCopyNode будет преобразование элементов без содержимого в пустые элементы. Двоичное кодирование не поддерживает пустые элементы. При использовании WsCopyNode с модуль записи, использующий двоичное кодирование этого свойства, ни в коем случае не оказывает никакого влияния. Все пустые элементы являются преобразуется в элементы без содержимого. По умолчанию это свойство имеет значение FALSE. Для входной СТРОКИ XML, например: syntax<br><br><?xml version="1.0" encoding="utf-8"?><br><container><br> <emptyElement /><br> <emptyElementWithEndTag></emptyElementWithEndTag><br></container><br> Если это свойство имеет значение FALSE, WsCopyNode создаст следующий xml: syntax<br><br><?xml version="1.0" encoding="utf-8"?><br><container><br> <emptyElement /><br> <emptyElementWithEndTag></emptyElementWithEndTag><br></container><br> Если это свойство имеет значение TRUE, WsCopyNode создаст следующий xml: syntax<br><br><?xml version="1.0" encoding="utf-8"?><br><container><br> <emptyElement /><br> <emptyElementWithEndTag /><br></container><br> |
WS_XML_WRITER_PROPERTY_EMIT_UNCOMPRESSED_EMPTY_ELEMENTS Значение: 18 Windows 8 или более поздней версии: логический код, определяющий способ выдачи пустых элементов. Если задано значение FALSE, элемент, созданный только вызовами WsWriteStartElement и WsWriteEndElement , будет выдаваться следующим образом: syntax<br><emptyElement /><br> Если задано значение TRUE, этот элемент будет выдаваться следующим образом: xml<br><emptyElement></emptyElement><br><br> Значение по умолчанию — FALSE. |
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 7 [классические приложения | Приложения UWP] |
Минимальная версия сервера | Windows Server 2008 R2 [классические приложения | Приложения UWP] |
Верхняя часть | webservices.h |
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по