Announcement

Collapse
No announcement yet.

Datatable columnname gleich tablename

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Datatable columnname gleich tablename

    Hallo,
    habe ein Problem für das Meister Google noch keine Lösung gefunden hat.
    Ich hole mit einem PHP-Script Daten aus einer Mysql Datenbank und gebe die Daten als XML zurück. Dann lese ich das XML in ein Dataset. Soweit funktioniert alles wunderbar. Allerdings gibt es eine Tabelle in welcher der Tabellenname auch als Spaltenname verwendet wird. Etwa so:
    <products_description>
    <id>1</id>
    <products_short_description>bla,bla</products_short_description>
    .
    .
    .
    <products_description>bla,bla</products_description>
    <products_description>
    Dieses XML wird nicht korrekt eingelesen. Aus 'products_description' wird eine neue Spalte 'products_description_ID' und aus einer Zeile werden 2.
    Hat vielleicht jemand eine Idee wie man dieses Problem lösen kann ohne die Tabellenstruktur zu ändern oder die Daten 'manuell' in die Tabelle einzulesen.
    Dank im voraus

    Grüße Conny

    Edit:
    Also wenn man das XML in ein XDOCUMENT einließt und dann die Daten zu Fuß einliest, sieht das ungefähr so aus:
    Code:
     
             For Each xerow As XElement In xdoc.Root.Elements
                tab = sds.Tables(xerow.Name.LocalName)
                Dim row As DataRow = tab.NewRow
                For Each xefield As XElement In xerow.Elements
                    row(xefield.Name.LocalName) = xefield.Value
                Next
                tab.Rows.Add(row)
            Next
    Das funtzt. Ist aber nicht so elegant wie DataSet.ReadXml(xml). Vielleicht hat ja doch noch jemand eine Idee.
    Zuletzt editiert von connysoft; 17.10.2012, 14:04.
Working...
X