Freigeben über


Angeben von Beziehungen zwischen Elementen ohne Schachtelung (ADO.NET)

Wenn Elemente nicht geschachtelt sind, werden keine impliziten Beziehungen erstellt. Sie können jedoch Beziehungen zwischen nicht geschachtelten Elementen mithilfe der msdata:Relationship-Anmerkung explizit angeben.

Im folgenden Beispiel wird ein XML-Schema gezeigt, in dem die msdata:Relationship-Anmerkung zwischen den Elementen Order und OrderDetail angegeben wurde, die nicht geschachtelt sind. Die msdata:Relationship-Anmerkung wird als das untergeordnete Element des Schema-Elements angegeben.

<xs:schema id="MyDataSet"  
             xmlns:xs="http://www.w3.org/2001/XMLSchema" 
             xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
 <xs:element name="MyDataSet" msdata:IsDataSet="true">
  <xs:complexType>
    <xs:choice maxOccurs="unbounded">
      <xs:element name="OrderDetail">
       <xs:complexType>
         <xs:sequence>
           <xs:element name="OrderNo" type="xs:string" />
           <xs:element name="ItemNo" type="xs:string" />
         </xs:sequence>
       </xs:complexType>
      </xs:element>
      <xs:element name="Order">
       <xs:complexType>
         <xs:sequence>
           <xs:element name="OrderNumber" type="xs:string" />
           <xs:element name="EmpNumber" type="xs:string" />
         </xs:sequence>
       </xs:complexType>
      </xs:element>
    </xs:choice>
  </xs:complexType>

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

Während des Zuordnungsvorgangs des XSD-Sprachschemas (XML Schema Definition) wird ein DataSet mit der Order-Tabelle und der OrderDetail-Tabelle und einer zwischen diesen beiden Tabellen definierten Beziehung erstellt, wie nachstehend gezeigt wird.

RelationName: OrdOrderDetailRelation
ParentTable: Order
ParentColumns: OrderNumber 
ChildTable: OrderDetail
ChildColumns: OrderNo 
Nested: False

Siehe auch

Konzepte

Generieren von DataSet-Beziehungen aus einem XML-Schema (XSD)

Weitere Ressourcen

Zuordnen von XSD-Einschränkungen (XML-Schema) zu DataSet-Einschränkungen