DataSet.ReadXmlSchema

poruka: 1
|
čitano: 1.049
|
moderatori: Lazarus Long, XXX-Man, vincimus
1
+/- sve poruke
ravni prikaz
starije poruke gore
17 godina
neaktivan
offline
DataSet.ReadXmlSchema (.NET Framework 3.5)

Imam xsd datoteku sa XML shemom koju bih htio učitati u Dataset. Shema se sastoji od 3 top level elementa(pictures, folders, categories) koji mogu sadržavati neograničen broj podelemenata.

Problem je da kad učitam shemu u dataset, umjesto 3 tablice za 3 top level elementa ja dobijem 6 tablica, tj. dobijem tablice za top level elemente ali i 3 tablice sa nazivom podelemenata.

 

Shema:

 

<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2008 sp1 (http://www.altova.com) by jura (klafura) -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="gallery">
  <xs:complexType>
  <xs:sequence>
  <xs:element name="pictures" maxOccurs="1" minOccurs="1">
  <xs:complexType>
  <xs:sequence>
  <xs:element name="picture" maxOccurs="unbounded">
  <xs:complexType>
  <xs:attribute name="name" type="xs:string"/>
  <xs:attribute name="displayName" type="xs:string"/>
  <xs:attribute name="folderID" type="xs:int"/>
  <xs:attribute name="catID" type="xs:int"/>
  </xs:complexType>
  </xs:element>
  </xs:sequence>
  </xs:complexType>
  </xs:element>
  <xs:element name="folders" maxOccurs="1" minOccurs="1">
  <xs:complexType>
  <xs:sequence>
  <xs:element name="folder" maxOccurs="unbounded">
  <xs:complexType>
  <xs:attribute name="ID" type="xs:int"/>
  <xs:attribute name="path" type="xs:string"/>
  </xs:complexType>
  </xs:element>
  </xs:sequence>
  </xs:complexType>
  </xs:element>
  <xs:element name="categories" maxOccurs="1" minOccurs="1">
  <xs:complexType>
  <xs:sequence>
  <xs:element name="category" maxOccurs="unbounded">
  <xs:complexType>
  <xs:attribute name="ID" type="xs:int"/>
  <xs:attribute name="parID" type="xs:int"/>
  <xs:attribute name="name" type="xs:string"/>
  </xs:complexType>
  </xs:element>
  </xs:sequence>
  </xs:complexType>
  </xs:element>
  </xs:sequence>
  </xs:complexType>
  </xs:element>
</xs:schema>

 


Željeni oblik XML-a u datasetu i nakon njega: 

 

<?xml version="1.0" encoding="UTF-8"?>
<gallery xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="gallery2.xsd">
  <pictures>
  <picture name="bukva.jpg" displayName="lijepa bukva" folderID="1" catID="1"/>
  <picture name="val.jpg" displayName="lijepi val" folderID="1" catID="2"/>
  </pictures>
  <folders>
  <folder ID="1" path="C:\slike"/>
  </folders>
  <categories>
  <category ID="1" parID="0" name="šume"/>
  <category ID="2" parID="0" name="more"/>
  </categories>
</gallery>

 

...a ovako to izgleda nakon učitavanja sheme i dodavanja par redaka u dataset te pozivanja WriteXml-a:


<?xml version="1.0" standalone="yes"?>
<gallery>
  <picture name="bukva.jpg" displayName="lijepa bukva" folderID="1" catID="1" />
  <picture name="val.jpg" displayName="lijepi val" folderID="1" catID="2" />
</gallery>

 

Ako netko zna kako dobiti željeni oblik XML-a(samo tri tablice) i zadržati tu formu na izlazu iz dataseta, neka kaže sad il' šuti zauvijek :)

Poruka je uređivana zadnji put uto 8.7.2008 9:42 (vani).
 
0 0 hvala 0
1
Nova poruka
E-mail:
Lozinka:
 
vrh stranice