WS_READ_TYPE_CALLBACK 콜백 함수(webservices.h)

WS_TYPE 지정되면 값을 읽습니다. 이렇게 하면 핵심 serialization 모델에 쉽게 매핑되지 않는 XML 구문을 읽을 수 있습니다.

구문

WS_READ_TYPE_CALLBACK WsReadTypeCallback;

HRESULT WsReadTypeCallback(
  [in]           WS_XML_READER *reader,
  [in]           WS_TYPE_MAPPING typeMapping,
  [in]           const void *descriptionData,
  [in, optional] WS_HEAP *heap,
                 void *value,
  [in]           ULONG valueSize,
  [in, optional] WS_ERROR *error
)
{...}

매개 변수

[in] reader

형식 값을 포함하는 WS_XML_READER 핸들에 대한 포인터입니다.

[in] typeMapping

XML이 이 형식에 매핑되는 방법을 나타냅니다.

매핑이 이 특정 형식에 맞지 않는 경우 콜백은 WS_E_INVALID_OPERATION 반환해야 합니다. ( Windows Web Services 반환 값을 참조하세요.) 콜백 구현은 이후 버전에서 새 매핑 형식을 전달하도록 준비해야 하며 이러한 경우 WS_E_INVALID_OPERATION 반환해야 합니다.

[in] descriptionData

WS_CUSTOM_TYPE_DESCRIPTION 구조체의 descriptionData 필드 값에 대한 포인터입니다. 콜백은 이를 사용하여 형식에 대한 추가 정보에 액세스할 수 있습니다.

[in, optional] heap

중첩 필드와 같이 이 형식과 연결된 추가 데이터를 할당하는 데 사용할 힙에 대한 포인터입니다.

호출자가 형식을 역직렬화할 때 WS_HEAP 개체를 지정하지 않은 경우 이 매개 변수는 NULL일 수 있습니다.

value

역직렬화되는 값을 보유하는 버퍼에 대한 포인터입니다. 콜백은 판독기의 현재 내용과 typeMapping을 기반으로 값을 채우는 역할을 합니다. 필요한 경우 콜백은 제공된 힙을 사용하여 값과 연결된 값을 할당할 수 있습니다.

[in] valueSize

역직렬화되는 버퍼 크기입니다. 버퍼는 WS_CUSTOM_TYPE_DESCRIPTION 지정된 크기에 따라 할당됩니다.

[in, optional] error

함수가 실패할 경우 추가 오류 정보를 저장해야 하는 WS_ERROR 데이터 구조에 대한 포인터입니다.

반환 값

이 콜백 함수는 값을 반환하지 않습니다.

설명

콜백은 WS_TYPE_MAPPING 설명서에서 WsReadType과 동일한 호출 시퀀스로 호출됩니다. 이는 콜백에서 읽어야 하는 XML의 부분을 정의합니다.

요구 사항

   
지원되는 최소 클라이언트 Windows 7 [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 R2 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 webservices.h