tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
2
ZUGRIFFE
1718
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    tabina tabina ist offline Mitglied Bronze
    Registriert seit
    Nov 2007
    Beiträge
    49
    Hallo,

    ich habe folgendes Problem: ich lese für ein DataGridView die Bezeichner für die Spalten aus einer XML-Datei aus. Das funktioniert auch ganz wunderbar. Jetzt habe ich mir überlegt, dass ich noch weitere Informationen in Form von Attributen mitgeben möchte.
    Ich benutze dafür die Funktion GetAttribute vom XmlReader, aber diese gibt mir immer null als Wert zurück. HasAttributes ist auch immer false.

    Hier ein Auszug aus der xml-Datei:

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    
    <!-- The columns to appear in the DataGridView.-->
      <table>
        <numcolumns>14</numcolumns>
        <column>Name</column>
        <column>Value</column>
       <column>Domain</column>
        <column>Comment</column>
        <column>Read-Only</column>
        <column test="clb">Project</column>
      </table>

    Mein code zum Lesen der xml Datei sieht so aus:
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    
    configReader = new XmlTextReader(mConfigName);
                    while (configReader.Read())
                    {
                        if (configReader.NodeType == XmlNodeType.Element)
                        {
                            if (configReader.Name.CompareTo("column") == 0)
                            {
                                COLUMNS[i] = configReader.ReadElementContentAsString();
                                String attr = configReader.GetAttribute("test");
                                i++;
                            }
                        }
                    }

    Was mache ich falsch?

    Danke schon mal für jede Hilfe!

    Gruss,
    tabina
     

  2. #2
    M4st3r M4st3r ist offline Mitglied Brokat
    Registriert seit
    Jan 2005
    Ort
    Frankfurt am Main
    Beiträge
    297
    Ich bin mir nicht sicher, kanns auch im moment nicht ausprobieren, aber bekommst du nicht während dem Read() irgendwann als XmlNodeType "System.Xml.XmlNodeType.Attribute"
     

  3. #3
    Avatar von Nico Graichen
    Nico Graichen Nico Graichen ist offline aka gemballa
    tutorials.de Moderator
    Registriert seit
    Dec 2003
    Ort
    Pulheim (NRW)
    Beiträge
    3.898
    Blog-Einträge
    34
    Hi

    Definiere dir doch ein Xml-Schema, welches du dann per XmlSerializer serialisieren und Deserialisieren kannst.
    Alternative:
    Du schreibst dir eine Klasse, welche du per XmlSerializer zu Xml verarbeitest.

    Der XmlReader ist in vielen Dingen sehr unflexibel und man hat mehr Aufwand herauszufinden, wo man sich grad im Xml befindet, als das man wirklich vorankommt.
     
    Grüße Nico
    ----------------------
    Xing
    ----------------------
    Zitat Zitat von Mark Twain (1835-1910)
    Es gibt drei Dinge, die eine Frau aus dem Nichts hervorzaubern kann: einen Hut, einen Salat und einen Ehekrach.
    Zitat Zitat von Mike Wilson - Biographie über Larry Ellison (CEO Oracle)
    The Difference Between God and Larry Ellison: God Doesn't Think He's Larry Ellison

Ähnliche Themen

  1. SimpleXML: Element mit bestimmtem Attribut auslesen
    Von jankon im Forum XML Technologien
    Antworten: 1
    Letzter Beitrag: 18.02.10, 10:37
  2. XSLT Tag-Attribut auslesen
    Von derdienstag im Forum XML Technologien
    Antworten: 1
    Letzter Beitrag: 08.02.10, 13:39
  3. [C#] XML - Knoten mit bestimmtem Attribut auslesen
    Von psykochris im Forum .NET Datenverwaltung
    Antworten: 4
    Letzter Beitrag: 21.01.10, 14:38
  4. Antworten: 4
    Letzter Beitrag: 11.03.08, 11:53
  5. CSS-width-Attribut per JavaScript auslesen
    Von Thomas D im Forum Javascript & Ajax
    Antworten: 25
    Letzter Beitrag: 28.05.07, 17:25