Sequence 요소의 바인딩 지원
이 항목은 레거시 기술과 관련된 것입니다. 이제 XML Web services와 XML Web services 클라이언트는 다음을 사용하여 만들어야 합니다. Windows Communication Foundation.
.NET Framework에서는 <sequence> 요소에 대한 바인딩 지원을 제공합니다.
설명
스키마에서 클래스를 생성할 경우 XML Schema Definition Tool (Xsd.exe)에서는 클래스의 필드 또는 속성과 같은 멤버를 <sequence> 또는 <all> 요소에 나열된 순서대로 생성합니다. 하지만 지정된 클래스 인스턴스에서 스키마를 생성할 경우 멤버의 순서는 리플렉션 엔진에서 serializer에 멤버를 반환하는 순서에 따라 달라집니다. 이 순서는 정의되어 있지 않으며 변경될 수 있습니다. 생성된 스키마의 시퀀스 순서를 결정하려면 XmlElementAttribute, XmlAnyElementAttribute 및 XmlArrayAttribute 특성 클래스의 Order 속성을 적절하게 설정합니다. Xsd.exe 도구를 사용하여 스키마에서 클래스를 생성할 경우 /order 명령줄 스위치를 사용하여 Order 속성을 자동으로 생성할 수 있습니다.
<sequence> 요소는 <element> XSD 요소나 다른 특정 XSD 요소를 사용하여 정의한 요소를 정렬하여 그룹화합니다. 이와 달리 All 요소의 바인딩 지원 요소는 <sequence> 요소가 포함할 수 있는 요소의 하위 집합을 순서 없이 그룹화합니다.
Xsd.exe 유틸리티를 사용하여 XML 스키마 문서에서 소스 코드를 생성할 경우 public 필드는 <sequence> 요소나 <all> 요소의 콘텐츠와 동일한 순서로 생성됩니다.
어셈블리의 클래스 집합에서 XML 스키마 문서를 생성할 경우에는 public 필드가 클래스에 표시되는 순서와 동일하게 <sequence> 요소 아래에 표시되는 해당 요소로 변환됩니다.
이때 복합 형식 내의 요소는 순서 없이 표시되는 것이 아니라 정렬되어 표시되는 것으로 가정합니다.
가능한 특성 | 바인딩 지원 |
---|---|
id |
Xsd.exe 유틸리티는 고유 식별자를 제공하기 위한 id 특성을 무시합니다. |
maxOccurs |
Xsd.exe에서는 <sequence> 요소에 대해 maxOccurs 값 여러 번 발생하는 시퀀스(maxOccurs가 1보다 큰 시퀀스)가 있는 스키마와 함께 Xsd.exe를 사용하는 경우에는 /order 명령줄 옵션을 사용합니다. 이렇게 해야 하는 이유에 대한 자세한 내용은 MaxOccurs 특성의 바인딩 지원 특성을 참조하십시오. |
minOccurs |
<sequence> 요소를 적용한 경우 XML 스키마 문서에서 소스 코드를 생성할 때 Xsd.exe는 minOccurs 특성을 무시합니다. 클래스에서 XML 스키마 문서를 생성할 경우 Xsd.exe는 minOccurs 값을 지정하지 않고 기본값 MinOccurs 특성의 바인딩 지원 특성을 참조하십시오. |
가능한 부모 요소: <choice>, <complexType>, <extension>, <group>, <restriction>
가능한 자식 요소: <annotation>, <any>, <choice>, <element>, <group>