Avatar billede testpilot_dk Nybegynder
14. maj 2007 - 13:26 Der er 3 kommentarer og
1 løsning

xml og arraylist

Hej!

  Jeg har et spørgsmål omkring XmlSerializer klassen,

Jeg bruger den til at serialisere nogle objekter fra en ArrayListe, det går også fint nok, men de enkelte objekt hedder
      <anyType xsi:type="Setting">

hvor jeg gerne bare vil have den til at hedder <Setting> istedet for.
Hvordan kan jeg gøre dette?

Min CS kode er som følgende:
-----------------------------------------------------------
            Setting s = new Setting("test", 1, SettingType.Database.ToString(), "test", "test", "test", "test", 1);
            Setting ss = new Setting("test2", 2, SettingType.Database.ToString(), "test2", "test2", "test2", "test2", 2);
            Setting sss = new Setting("test3", 3, SettingType.File.ToString(), "test3", 3, "test3");
            XmlWriter fs = new XmlTextWriter(FilePath, Encoding.Default);

            arlListOfSettings.Add(s);
            arlListOfSettings.Add(ss);
            arlListOfSettings.Add(sss);

            XmlRootAttribute xmlroot = new XmlRootAttribute("SettingsList");

            XmlAttributeOverrides overrides = new XmlAttributeOverrides();
           
            XmlSerializer xmlseria = new XmlSerializer(typeof(ArrayList), overrides ,new Type[] { typeof(Setting)}, xmlroot, "Mango Administration");

            xmlseria.Serialize(fs, arlListOfSettings);


    public class Setting
    {
        private string strName;
        private string strValues = "";
        private int iRiskLevel = 0;
        private int iID = 0;
        private Values values = null;

        public Setting()
        {
            values = new Values();
        }

Ovenstående er kun et udpluk og en test af XmlSerialiseren.

Min XML fil ser således ud,

<?xml version="1.0" encoding="Windows-1252"?>
<SettingsList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="Mango Administration">
<anyType xsi:type="Setting">
<Name>test</Name>
<ID>1</ID>
<SettingType>Database</SettingType>
<Values>
<Filename />
<Server>test</Server>
<Database>test</Database>
<Username>test</Username>
<Password>test</Password>
<Duringtime />
</Values>
<Risklevel>1</Risklevel>
</anyType>
</SettingsList>

Det er anyType jeg gerne vil af med og benytte "Setting" istedet.
Avatar billede dr_chaos Nybegynder
14. maj 2007 - 20:16 #1
Så tror jeg du skal bruge en List<Setting> i stedet for.
Avatar billede tuxic Nybegynder
17. maj 2007 - 21:23 #2
Eller sende et array af Setting (Setting []) til XmlSerializeren. (Du kan fx kalde .ToArray på ArrayListen hvis du vil kunne tilføje løbende).
Avatar billede testpilot_dk Nybegynder
28. juni 2007 - 15:52 #3
Send et svar begge to, så jeg kan lukke
Avatar billede dr_chaos Nybegynder
28. juni 2007 - 17:36 #4
svar :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester