Сериализация XML
От: vehfl  
Дата: 09.10.07 11:57
Оценка:
Создал класс для обработки xml файла посредством сериализации
        public class Signals
        {
            [XmlArrayAttribute("SignalSource")]
            public SignalSource[] Items;            
        }
        
        public class SignalSource
        {
            [XmlAttribute] public string Name;
            [XmlAttribute] public string LastValue;
            [XmlAttribute] public string UpdateTime;
            [XmlArrayAttribute("SignalSource")]
            public SignalSource[] Items;
        }

в итоге получаю

<?xml version="1.0" encoding="utf-8"?>
<Signals xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <SignalSource>
    <SignalSource Name="name1" LastValue="lastvalue1" UpdateTime="updatetime1">
      <SignalSource>
        <SignalSource Name="name2" LastValue="lastvalue2" UpdateTime="updatetime2" />
        <SignalSource Name="name3" LastValue="lastvalue3" UpdateTime="updatetime3" />
      </SignalSource>
    </SignalSource>
  </SignalSource>
</Signals>


интересует как можно получить такой xml-файл

<?xml version="1.0" encoding="utf-8"?>
<Signals xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <SignalSource Name="name1" LastValue="lastvalue1" UpdateTime="updatetime1">
        <SignalSource Name="name2" LastValue="lastvalue2" UpdateTime="updatetime2" />
        <SignalSource Name="name3" LastValue="lastvalue3" UpdateTime="updatetime3" />
    </SignalSource>
</Signals>
Re: Сериализация XML
От: stump http://stump-workshop.blogspot.com/
Дата: 09.10.07 12:05
Оценка:
Здравствуйте, vehfl, Вы писали:

Везде замени XmlArrayAttribute на XmlElementAttribute
Понедельник начинается в субботу
Re[2]: Сериализация XML
От: vehfl  
Дата: 09.10.07 13:08
Оценка:
спасибо....

следующий вопрос, как отобразить все это в TreeView?
на уме щас только одно: рекурсивный обход начиная с класса Signals... только в этом случае я не вижу смысла в сериализации, так как загрузив xml файл в класс XmlDocument я делаю тоже самое (рекурсию)...

как сериализовать xml для отображения его в TreeView?
Re[3]: Сериализация XML
От: altarvic  
Дата: 10.10.07 03:51
Оценка:
Здравствуйте, vehfl, Вы писали:

V>спасибо....


V>следующий вопрос, как отобразить все это в TreeView?

V>на уме щас только одно: рекурсивный обход начиная с класса Signals... только в этом случае я не вижу смысла в сериализации, так как загрузив xml файл в класс XmlDocument я делаю тоже самое (рекурсию)...

V>как сериализовать xml для отображения его в TreeView?


1) А в чем по вашему смысл сериализации?
2) Что именно нужно отобразить в дереве, сам xml? или данные класса Signals?
Re[4]: Сериализация XML
От: vehfl  
Дата: 10.10.07 07:47
Оценка:
Здравствуйте, altarvic, Вы писали:

A>1) А в чем по вашему смысл сериализации?

звучит смешно, не знаю...

A>2) Что именно нужно отобразить в дереве, сам xml? или данные класса Signals?

задача стоит в представлении пользователю xml файла в виде дерева...
после того как xml я десериализовал в класс Signals, как я понимаю, данные класса Signals
Re: Сериализация XML
От: rasta_queen  
Дата: 06.11.07 14:52
Оценка:
Здравствуйте, vehfl, Вы писали:

V>Создал класс для обработки xml файла посредством сериализации

V>
V>        public class Signals
V>        {
V>            [XmlArrayAttribute("SignalSource")]
V>            public SignalSource[] Items;            
V>        }
        
V>        public class SignalSource
V>        {
V>            [XmlAttribute] public string Name;
V>            [XmlAttribute] public string LastValue;
V>            [XmlAttribute] public string UpdateTime;
V>            [XmlArrayAttribute("SignalSource")]
V>            public SignalSource[] Items;
V>        }
V>

V>в итоге получаю

V>
V><?xml version="1.0" encoding="utf-8"?>
V><Signals xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
V>  <SignalSource>
V>    <SignalSource Name="name1" LastValue="lastvalue1" UpdateTime="updatetime1">
V>      <SignalSource>
V>        <SignalSource Name="name2" LastValue="lastvalue2" UpdateTime="updatetime2" />
V>        <SignalSource Name="name3" LastValue="lastvalue3" UpdateTime="updatetime3" />
V>      </SignalSource>
V>    </SignalSource>
V>  </SignalSource>
V></Signals>
V>


V>интересует как можно получить такой xml-файл


V>
V><?xml version="1.0" encoding="utf-8"?>
V><Signals xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
V>    <SignalSource Name="name1" LastValue="lastvalue1" UpdateTime="updatetime1">
V>        <SignalSource Name="name2" LastValue="lastvalue2" UpdateTime="updatetime2" />
V>        <SignalSource Name="name3" LastValue="lastvalue3" UpdateTime="updatetime3" />
V>    </SignalSource>
V></Signals>
V>


А как ты XML файл получаешь?