共用方式為


從 XML 結構描述 (XSD) 產生 DataSet 關聯

您可以在 DataSet 內建立父子關係,以建立兩個或多個資料行之間的關聯。有三種方法可表示 XML 結構描述定義語言 (XSD) 結構描述內的 DataSet 關聯:

  • 指定巢狀複雜型別。

  • 使用 msdata:Relationship 註釋。

  • 指定 xs:keyref 且不使用 msdata:ConstraintOnly 註釋。

巢狀複雜型別

結構描述中定義的巢狀複雜型別表示項目間的父子關係。下列 XML 結構描述片段顯示 OrderDetailOrder 項目的項目子系。

<xs:element name="Order"> <xs:complexType> <xs:sequence>
        
       <xs:element name="OrderDetail" /> <xs:complexType>
             
</xs:complexType> </xs:sequence> </xs:complexType> </xs:element>

XML 結構描述對應處理會在 DataSet 內建立的資料表,該資料表對應至結構描述中的巢狀複雜型別。它也會建立其他的資料行,作為所產生之資料表的父子資料行。請注意,這些父子資料行可指定關聯性,這與指定 key/foreign key 條件約束的功能不同。

msdata:Relationship 註釋

msdata:Relationship 註釋可讓您在結構描述中無巢狀的項目間明確地指定父子關係。下列範例會顯示 Relationship 項目的結構。

<msdata:Relationship name="CustOrderRelationship"         msdata:parent=""         msdata:child=""         msdata:parentkey=""         msdata:childkey="" />

msdata:Relationship 註釋的屬性會識別父子關係包含的項目,以及關係中所包含的 parentkeychildkey 項目與屬性。對應處理會使用這項資訊在 DataSet 內產生資料表,並在這些資料表間建立主索引鍵/外部索引鍵關聯性。

例如,下列結構描述片段中指定同一層級的 OrderOrderDetail 項目 (無巢狀結構)。結構描述指定了 msdata:Relationship 註釋,用來指定這兩個項目間的父子關係。在此情況下,即需使用 msdata:Relationship 註釋,明確地指定關聯性。

 <xs:element name="MyDataSet" msdata:IsDataSet="true"> <xs:complexType> <xs:choice maxOccurs="unbounded"> <xs:element name="OrderDetail"> <xs:complexType>
            
</xs:complexType> </xs:element> <xs:element name="Order"> <xs:complexType>
            
</xs:complexType> </xs:element> </xs:choice> </xs:complexType>

</xs:element>    <xs:annotation>      <xs:appinfo>        <msdata:Relationship name="OrdOrdDetailRelation"                                        msdata:parent="Order"                                         msdata:child="OrderDetail"                                         msdata:parentkey="OrderNumber"                                         msdata:childkey="OrderNo"/>      </xs:appinfo>   </xs:annotation>

對應處理會使用 Relationship 項目,於 DataSetOrder 資料表的 OrderNumber 資料行,以及 OrderDetail 資料表的 OrderNo 資料行間建立父子關係。對應處理只會指定關聯性,而不會像關聯式資料庫的 key/foreign key 條件約束一樣,自動為這些資料行的值指定任何條件約束。

本節內容

相關章節