Laden...

Serialisierer mag nur eine Dimension???

Erstellt von digi333 vor 14 Jahren Letzter Beitrag vor 14 Jahren 751 Views
D
digi333 Themenstarter:in
290 Beiträge seit 2006
vor 14 Jahren
Serialisierer mag nur eine Dimension???

Ich möchte mehrere Tabelleneinträge serialisieren mit einer Datei. Also hab ich folgende Struktur...


public class Words
        {
            private string text;
            private int count;
            private string desc;
            private string sentence;

            public string Text
            {
                get { return this.text; }
                set { this.text = value; }
            }

            public int Count
            {
                get { return this.count; }
                set { this.count = value; }
            }

            public string Desc
            {
                get { return this.desc; }
                set { this.desc = value; }
            }
            public string Sentence
            {
                get { return this.sentence; }
                set { this.sentence = value; }
            }
        }

        public class Nouns:Words
        {
        }

        public class Verbs:Words
        {
        }

        private void btn_Save_Click(object sender, EventArgs e)
        {
            List<Words[]> words = new List<Words[]>();

            words.Add(list_Nouns.ToArray());
            words.Add(list_Verbs.ToArray());

            XmlSerializer mySerializer = new XmlSerializer(typeof(List<Words[]>));
            StreamWriter myWriter = new StreamWriter(@"C:\test.xml");
            mySerializer.Serialize(myWriter, words); // Fehler!! 
            myWriter.Close();
        }

"list_Nouns" und "list_Verbs" werden in zwei Tabellen dargestellt, aber ich möchte die Ergebnisse in eine Datei speichern. Was kann ich noch machen???

799 Beiträge seit 2007
vor 14 Jahren

Ich glaube mich zu erinnern, dass der Serialisierer nicht mit dynamischen Listen fertig wird. So sollte es dann funktionieren:


...
            XmlSerializer mySerializer = new XmlSerializer(typeof(Words[][]));
            StreamWriter myWriter = new StreamWriter(@"C:\test.xml");
            mySerializer.Serialize(myWriter, words.ToArray()); // Fehler!! 
...

As a man thinketh in his heart, so he is.

  • Jun Fan
    Es gibt nichts Gutes, außer man tut es.
  • Erich Kästner
    Krawutzi-Kaputzi
  • Kasperl