перечисление 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, указывающая, разрешает ли модуль записи несколько элементов и непустое пространство на верхнем уровне документа. Это свойство Не может быть задано значение TRUE с WS_XML_WRITER_MTOM_ENCODING. Это свойство по умолчанию используется для 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 BOOL указывает, что вызывается 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 boOL используется с 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 как пара тегов start/end или пустой элемент. Если для этого свойства задано значение TRUE, WsCopyNode преобразуйте элементы без содержимого в пустые элементы. Двоичная кодировка не поддерживает пустые элементы. При использовании WsCopyNode модуль записи с использованием двоичной кодировки этого свойства не влияет ни один из способов. Все пустые элементы: преобразуется в элементы без содержимого. По умолчанию это свойство FALSE. Для входной XML-строки, например:
Если это свойство FALSE, WsCopyNode создаст следующий xml:
Если это свойство TRUE, WsCopyNode создаст следующий xml:
|
WS_XML_WRITER_PROPERTY_EMIT_UNCOMPRESSED_EMPTY_ELEMENTS Значение: 18 Windows 8 или более поздней версии: boOL, которая определяет, как создаются пустые элементы. Если задано значение false
Если задано значение TRUE, этот элемент будет создан следующим образом: xml Значение по умолчанию — FALSE |
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows 7 [классические приложения | Приложения UWP] |
минимальный поддерживаемый сервер | Windows Server 2008 R2 [классические приложения | Приложения UWP] |
заголовка | webservices.h |