共用方式為


All 項目繫結支援

.NET Framework 會提供 <all> 項目的繫結支援。

然而,由於無法在程式碼中指定 <all> 項目,因此從一組類別產生 XML 結構描述文件時,便會建立該項目。

說明

由於無法在程式碼中指定 <all> 項目,因此從一組類別產生 XML 結構描述文件時,便會建立該項目。

<all> 項目會提供一組未排序的項目。每個子項目都可以出現一次或是完全不出現。

從 XML 結構描述文件產生原始程式碼時,Xsd.exe 會將 <all> 項目的每個子項目轉譯成公用欄位。欄位的出現順序會與 XML 結構描述中的子項目相同。

從組件的一組類別中產生 XML 結構描述文件時,Xsd.exe 會使用 <sequence> 項目 (而不使用 <all> 項目),為對應到公用欄位的子項目進行分組。假設複雜型別中的項目必須依序出現,而不是以未排序方式顯示。

在匯入包含 <all> 項目的結構描述時,不要使用順序保留功能 (Xsd.exe 的 /order 參數)。

範例

輸入 XML 結構描述文件:

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
            targetNamespace="http://example.org/" xmlns="http://example.org/" elementFormDefault="qualified">
    <xsd:element name="complexInstance" type="MyComplexType"/>
    <xsd:element name="field1" type="xsd:string"/>
    <xsd:element name="field2" type="xsd:string"/>
    <xsd:element name="field3" type="xsd:string"/>

    <xsd:complexType name="MyComplexType">
        <xsd:all>
            <xsd:element ref="field1"/>
            <xsd:element ref="field2"/>
            <xsd:element ref="field3"/>
        </xsd:all>
    </xsd:complexType>
</xsd:schema>

由前面的 XML 結構描述文件所產生的 C# 類別:

[System.Xml.Serialization.XmlTypeAttribute(Namespace="http://example.org/")]
 [System.Xml.Serialization.XmlRootAttribute("complexInstance", Namespace="http://example.org/", IsNullable=false)]
public class MyComplexType {
        
    public string field1;
        
    public string field2;
        
    public string field3;
}

從前面 C# 原始程式所編譯的組件產生的 XML 結構描述複雜型別:

<xs:complexType name="MyComplexType">
    <xs:sequence>
        <xs:element minOccurs="0" maxOccurs="1" name="field1" type="xs:string" />
        <xs:element minOccurs="0" maxOccurs="1" name="field2" type="xs:string" />
        <xs:element minOccurs="0" maxOccurs="1" name="field3" type="xs:string" />
    </xs:sequence>
</xs:complexType>
可能的屬性 繫結支援

id

Xsd.exe 公用程式忽略試圖提供唯一識別項的 id 屬性。

maxOccurs

對於 <all> 項目而言,1 以外的 maxOccurs 屬性值都是無效的。Xsd.exe 會回報出現無效值的錯誤。

請參閱 MaxOccurs 屬性繫結支援 屬性。

minOccurs

minOccurs 屬性套用至 <all> 項目時,Xsd.exe 工具會忽略該屬性。

請參閱 MinOccurs 屬性繫結支援 屬性。

可能的父項目:<complexType><extension><group><restriction>

可能的子項目:<annotation><element>

Footer image

Copyright © 2007 by Microsoft Corporation. All rights reserved.