Функция WsReadBody (webservices.h)
Это вспомогающая функция, которая десериализует значение из средства чтения XML сообщения. Для WS_MESSAGE_STATE должно быть задано значение WS_MESSAGE_STATE_READING. Эта функция не вызывает никаких переходов состояния.
Синтаксис
HRESULT WsReadBody(
[in] WS_MESSAGE *message,
[in] const WS_ELEMENT_DESCRIPTION *bodyDescription,
[in] WS_READ_OPTION readOption,
[in, optional] WS_HEAP *heap,
void *value,
[in] ULONG valueSize,
[in, optional] WS_ERROR *error
);
Параметры
[in] message
Указатель на объект Message для чтения текста. Указатель должен ссылаться на допустимый объект WS_MESSAGE .
[in] bodyDescription
Указатель на объект, инкапсулирующий метаданные, описывающий сопоставление значения с элементом .
[in] readOption
Определяет, является ли значение обязательным и как его выделить. Дополнительные сведения см. в разделе WS_READ_OPTION .
[in, optional] heap
Указатель на объект Heap для чтения элемента. Указатель должен ссылаться на допустимый объект WS_HEAP .
value
Интерпретация данных, на которые ссылается этот параметр, зависит от WS_READ_OPTION.
[in] valueSize
Интерпретация значения этого параметра зависит от WS_READ_OPTION.
[in, optional] error
Указатель на объект WS_ERROR , в котором должны храниться дополнительные сведения об ошибке в случае сбоя функции.
Возвращаемое значение
Эта функция может возвращать одно из этих значений.
Код возврата | Описание |
---|---|
|
Входные данные не были в ожидаемом формате или не имели ожидаемого значения. |
|
Не хватает памяти. |
|
Один или несколько аргументов недопустимы. |
|
Эта функция может возвращать другие ошибки, не перечисленные выше. |
Комментарии
Эти функции поддерживают следующие сценарии на основе содержимого предоставленного WS_ELEMENT_DESCRIPTION :
- Чтение одного элемента. В этом случае полям elementLocalName и elementNs WS_ELEMENT_DESCRIPTION следует задать локальное имя и пространство имен элемента для чтения, а описание типа и типа представляет тип десериализуемого значения. При использовании WS_FAULT_TYPE или WS_ENDPOINT_ADDRESS_TYPE не нужно указывать локальное имя, пространство имен или описание типа (по умолчанию они будут соответствовать версии конверта или адресации сообщения).
- Чтение нескольких элементов в виде одного значения. В этом случае полям elementLocalName и elementNs WS_ELEMENT_DESCRIPTION следует задать значение NULL, а также указать WS_STRUCT_TYPE и WS_STRUCT_DESCRIPTION . В этом случае каждое поле десериализуемого значения структуры должно соответствовать элементам для чтения в тексте.
- Чтение нескольких элементов в виде нескольких значений. Чтение нескольких различных значений можно выполнить, просто вызвав функцию несколько раз.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 7 [классические приложения | Приложения UWP] |
Минимальная версия сервера | Windows Server 2008 R2 [классические приложения | Приложения UWP] |
Целевая платформа | Windows |
Header | webservices.h |
Библиотека | WebServices.lib |
DLL | WebServices.dll |