salut,
J'aimerais appliquer un schéma Xml à un DataSet.
mySchema.xsd:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 ... <xs:complexType name="level1"> <xs:sequence> <xs:element name="level2" type="level2" minOccurs="1" maxOccurs="unbounded" /> </xs:sequence> </xs:complexType> <xs:complexType name="level2"> <xs:sequence> <xs:element name="level3.1" type="level3.1" minOccurs="0" maxOccurs="1" /> <xs:element name="level3.2" type="level3.2" minOccurs="0" maxOccurs="1" /> </xs:sequence> <xs:attribute name="type" type="xs:string" use="required" /> <xs:attribute name="observationType" type="xs:string" use="required" /> <xs:attribute name="dateFunctionType" type="xs:string" use="required" /> </xs:sequence> </xs:complexType> ...Le problème est que mon schéma n'est pas pris en compte. Lorsque je compte je nombre de tables, le résultat = 0.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 this.dataSet.ReadXmlSchema(@"C:\mySchema.xsd");
Or si j'insère des données dans le DataSet via un XmlReader, (exactement selon les même règles que le schéma), et que je demande à voir à quoi ressemble le schéma auto-créé, ce dernier est décrit de facon procédurale (cad : description niveau par niveau, de facon un peu primaire).
generatedSchema.xsd :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 this.dataSet.ReadXml(xmlReader); this.dataSet.WriteXmlSchema("C:/generatedSchema.xsd");
Evidemment, si j'applique ce schéma auto-créé à) mon dataset, ca fonctionne bien (nombre de table ok). Mais je ne peut pas adopter ce type d'écriture de schéma.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 <xs:element name="level1" msdata:IsDataSet="true" msdata:UseCurrentLocale="true"> <xs:complexType> <xs:choice minOccurs="0" maxOccurs="unbounded"> <xs:element name="level2"> <xs:complexType> <xs:sequence> <xs:element name="level3.1" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="3.1.1" minOccurs="0" maxOccurs="unbounded"> ...
Est ce que quelqu'un saurait comment est ce que je peux appliquer mon schéma original, sans le reformater, à mon Dataset?
merci
Partager