Announcement

Collapse
No announcement yet.

Irgendwie weiss ich nicht mehr weiter ...

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

  • Irgendwie weiss ich nicht mehr weiter ...

    Hallo zusammen,

    mal wieder einige Fragen eines Anfängers. Ich bin dabei, so eine Art Frorum zu entwickeln. Jetzt soll das Ganze natürliche mit allem PiPaPo sein ;-) z.B. Benutzerverwaltung, Bereichtswesen usw. Das Ganze soll mit einer Datenbank im Hintergrund laufen (MySQL). Zur einmaligen Anmeldung müssen die Parameter für MySQL gelesen werden. Unter C++ habe ich das über IniFiles geregelt. Jetzt habe ich dafür unter C# leider nichts gefunden, es sei denn man hantiert mit externen DLLs. Jetzt habe ich mir einfach gedacht, dass über XML zu managen. Und jetzt die erste Frage. Wie kann eine INI Struktur im XML Format abgelegt werden, und wie handelt man diese Datei dann (Lesen, Schreiben usw.). Die nächste Frage schließt sich gleich an mein Problem an. Wo findet man Beispiele bzg. Forum Programmierung unter C#? Hat einer von euch schon Erfahrungen damit gesammelt? Gibt es eine gute Page die sich mit diesem Thema beschäftigt?

    Ein Anfänger dank Euch wirklich tausendfach für Eure Hilfe.

    Sascha

  • #2
    im Einfachsten Fall sieht die XML So aus:

    <Generell>
    <Tag1>Value1</Tag1>
    <Tag2>Value2</Tag2>
    <Tag3>Value3</Tag3>
    </Generell>
    <Program>
    ....
    </Program>

    Einlesen mit

    DataSet dsData = new DataSet();
    dsData.ReadXML("test.xml");

    Dann hast Du 2 Tabellen mit jeweils einer Zeile

    Bsp:
    string strVal1 = dsData.Tables["Generell"].Rows[0]["Tag1"].ToString();

    Du kannst die Daten im DataSet auch updaten und mit WriteXml auch wieder in die Datei zurückschreiben....

    Einfacher geht nicht, glaube ich....

    Comment


    • #3
      Hallo Sascha,

      mit den Tabellen wird man mE dem XML nicht gerecht.

      Alternative:

      XmlDocument doc = new XmlDocument();
      doc.Load(Server.MapPath(@"../xmlstream.xml"));

      dann gibts so Sachen wie:

      doc.CreateElement(...);
      doc.SelectSingleNode(...);

      etc.

      und dann:
      doc.Save(...);

      Falls das XML je User abgelegt werden soll, als Text in ein Feld des Users legen und per:

      doc.LoadXml(myRow[fieldXmlStream].ToString());

      laden.

      Speichern halt analog als String in das Feld.

      Vorteil: Änderungen, insbesondere Erweiterungen, können durch neue Knoten leicht abgebildet werden. der eigentliche Lade- und Schreib-Vorgang ändert sich nicht. In der DB gerade mal eine Spalte die alle Infos enthält, dazu ID und User-Kennung, fertig. Zur Not ist der XML Stream per Hand editierbar.

      Nachteile: Zugriffe erfolgen per XPath im Select(Single)Node und alles muss per CreateNode, CreateAttribute etc. gemacht werden. Ist zumindest am Anfang eher lästig.

      Dir

      Comment

      Working...
      X