SimpleContent 요소의 바인딩 지원

이 항목은 레거시 기술과 관련된 것입니다. 이제 XML Web services와 XML Web services 클라이언트는 다음을 사용하여 만들어야 합니다. Windows Communication Foundation.

.NET Framework에서는 <simpleContent> 요소에 대한 부분 바인딩 지원을 제공합니다.

단순 콘텐츠 확장은 항상 .NET Framework의 클래스 정의를 통해 완전히 표현됩니다. Xsd.exe에서는 단순 콘텐츠 제한을 인식하지 않습니다.

설명

XML 스키마 정의 언어는 <simpleContent> 요소를 사용하여 자식 요소가 없는 복합 형식을 정의합니다. 단순 콘텐츠(특성이나 본문 텍스트 또는 둘 다)를 포함하는 복합 형식은 <simpleContent> 요소 아래의 <extension> 또는 <restriction> 요소를 사용하여 확장 또는 제한을 통해 기본 형식에서 파생됩니다.

XML 스키마 문서에서 소스 코드를 생성할 경우 Xsd.exe는 <extension> 요소의 base 특성에 지정된 기본 형식에 해당하는 형식의 public 필드를 생성합니다. XML 스키마의 기본 제공 단순 형식과 .NET Framework 형식 간 바인딩에 대한 자세한 내용은 .NET Framework 개발자 가이드의 "XML 스키마(XSD) 형식 및 .NET Framework 형식 간의 데이터 형식 지원"을 참조하십시오.

단순 콘텐츠 확장 및 제한은 스키마 개체 모델에서 각각 XmlSchemaSimpleContentExtensionXmlSchemaSimpleContentRestriction 클래스를 통해 표현되며, XmlSchemaSimpleContent 클래스를 통해서도 표현됩니다.

이러한 클래스의 개체는 단순 콘텐츠가 포함된 복합 형식을 정의하는 XSD 문서에 해당하는 스키마 개체 모델을 프로그래밍 방식으로 만드는 데 사용할 수 있습니다.

예제

다음 코드는 입력 XML 스키마 문서입니다.

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
            targetNamespace="http://example.org/" xmlns="http://example.org/" elementFormDefault="qualified">
<xsd:element name="Distance">
  <xsd:complexType>
   <xsd:simpleContent>
    <xsd:extension base="xsd:float">
     <xsd:attribute name="units" type="xsd:string"/>
    </xsd:extension>
   </xsd:simpleContent>
  </xsd:complexType>
 </xsd:element>
</xsd:schema>

앞의 XML 스키마 문서에서 생성된 C# 클래스

[System.Xml.Serialization.XmlTypeAttribute(Namespace="http://example.org/")]
[System.Xml.Serialization.XmlRootAttribute(Namespace="http://example.org/", IsNullable=false)]
public class Distance {
        
    [System.Xml.Serialization.XmlAttributeAttribute()]
    public string units;
        
    [System.Xml.Serialization.XmlTextAttribute()]
    public System.Single Value;
}

앞의 C# 소스에서 컴파일된 어셈블리에서 생성된 XML 스키마 요소 및 복합 형식

<xs:element name="Distance" type="tns:Distance" />
<xs:complexType name="Distance">
  <xs:simpleContent>
    <xs:extension base="xs:float">
      <xs:attribute name="units" type="xs:string" />
    </xs:extension>
  </xs:simpleContent>
</xs:complexType>

가능한 특성 바인딩 지원

id

Xsd.exe 유틸리티는 고유 식별자를 제공하기 위한 id 특성을 무시합니다.

가능한 부모 요소: <complexType>

가능한 자식 요소: <annotation>, <extension>, <restriction>

참고 항목

참조

XmlSchemaSimpleContent