Mam klasy zdefiniowane jak poniżej:C# Zmiana nazw elementem pozycji na liście podczas szeregowania/deserializacji XML
[XmlRoot("ClassName")]
public class ClassName_0
{
//stuff...
}
I wtedy stworzyć listę ClassName_0 jak takie:
var myListInstance= new List<ClassName_0>();
jest to kod używam do serializacji:
var ser = new XmlSerializer(typeof(List<ClassName_0>));
ser.Serialize(aWriterStream, myListInstance);
jest to kod używam do deserializowania:
var ser = new XmlSerializer(typeof(List<ClassName_0>));
var wrapper = ser.Deserialize(new StringReader(xml));
Gdybym szeregować je do xml, xml wynikowy wygląda następująco:
<?xml version="1.0" encoding="utf-8"?>
<ArrayOfClassName_0 xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<ClassName_0>
<stuff></stuff>
</ClassName_0>
<ClassName_0>
<stuff></stuff>
</ClassName_0>
</ArrayOfClassName_0>
Czy istnieje sposób serializacji i móc deserializowania poniżej z/do listy ClassName_0?
<?xml version="1.0" encoding="utf-8"?>
<ArrayOfClassName xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<ClassName>
<stuff></stuff>
</ClassName>
<ClassName>
<stuff></stuff>
</ClassName>
</ArrayOfClassName>
Dzięki!
Myślę ten link może być użyteczne dla was, http://stackoverflow.com/questions/364253/how-to-deserialize-xml-document – sagar
Dzięki za link. Niestety jest to wygenerowany kod, więc nie mogę utworzyć niestandardowej listy żądanego typu i dodać do niej wszystkich atrybutów elementu. Mogę tylko dodawać atrybuty do samych klas. – VARAK