Einzelnen Beitrag anzeigen

Robert_G
(Gast)

n/a Beiträge
 
#2

Re: Array of Object? Ich will Record-Daten serialisieren!

  Alt 20. Sep 2005, 00:49
uff!

Öffentliche, kleingechriebene Felder? öffentliche Arrays? T-Prefixe?
Bist du sicher, dass du dich genügend mit .Net auskennst?

Mache aus PersonenDaten eine richtige Klasse und aus Personen eine typisierte Collection von Person.
Unter 1.1 (2.0 dürfte für Delphi wohl erst in 1 Jahr erscheinen...) lässt sich das mit viel Tipperei oder dem typed collection Wizzard aus #develop erledigen.

Ich habe mal eben eine Klasse Person und eine PersonCollection angelegt und durch den Serializer gescheucht.
Ist zwar kein Delphi sondern ein anderer Pascal dialekt, aber was da passiert sollte klar sein.
(Wenn es nicht klar ist, dürfte Serialisierung dein kleinstes Problem sein )
Delphi-Quellcode:
var Persons := new PersonCollection();

Persons.Add('Mr.XY', 99, '123456789');
Persons.Add('Ms.XY', 101, '12385734-12');
Persons.Add('Mr.30kg-Spatz', 1, 'Mööp');

var Serializer := new XmlSerializer(typeof(PersonCollection));

using Stream := new FileStream('Test.xml', FileMode.OpenOrCreate) do
   Serializer.Serialize(Stream, Persons);
Das hier kommt dabei raus:
XML-Code:
<?xml version="1.0" encoding="utf-8"?>
<ArrayOfPerson xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <Person>
    <Name>Mr.XY</Name>
    <Alter>99</Alter>
    <Telefon>123456789</Telefon>
  </Person>
  <Person>
    <Name>Ms.XY</Name>
    <Alter>101</Alter>
    <Telefon>12385734-12</Telefon>
  </Person>
  <Person>
    <Name>Mr.30kg-Spatz</Name>
    <Alter>1</Alter>
    <Telefon>Mööp</Telefon>
  </Person>
</ArrayOfPerson>
  Mit Zitat antworten Zitat