Benutzer mit den meisten Antworten
XmlSerializer - Server - Client - Strukturfragen

Frage
-
http://www.imagebanana.com/view/i5vmyshs/Strcuture_forSerial.png
Hallo,Hallo Frank,
Danke für den besten Tipp! :-)
Ich könnte doch jede x-beliebige Struktur jetzt so übertragen.
Sehe ich das richtig? Oder müsste ich was beachten?
Server -- Serialize -- Client.Das selbst zu parsen, analysieren wäre richtig zeitaufwendig gewesen.
Also nicht nur Listen oder einzelne Objekte.
Wäre nett eine Antwort zu erhalten.
Evtl. kannst Du kurz noch den Thread beantworten.
- Neuverbinden - http://social.msdn.microsoft.com/Forums/de-DE/visualcsharpde/thread/f2b53154-fb7a-4352-9758-4152014ae679Bis jetzt klappt es super.
Schöne Woche noch....
Grüße Andreas~~~~~
public Form1() { InitializeComponent(); Animal a1 = new Animal { MyProperty = 42, MyProperty2 = 43 }; Animal a2 = new Animal { MyProperty = 44, MyProperty2 = 45 }; List<Animal> liste = new List<Animal> { a1, a2 }; string serialized = SerializeObject(liste); } private String UTF8ByteArrayToString(Byte[] characters) { UTF8Encoding encoding = new UTF8Encoding(); string constructedString = encoding.GetString(characters); return (constructedString); } public string SerializeObject<T>(List<T> pListe) { try { string xmlizedString = null; MemoryStream memoryStream = new MemoryStream(); XmlSerializer xs = new XmlSerializer(typeof(List<T>)); XmlTextWriter xmlTextWriter = new XmlTextWriter(memoryStream, Encoding.UTF8); xs.Serialize(xmlTextWriter, pListe); memoryStream = (MemoryStream)xmlTextWriter.BaseStream; return UTF8ByteArrayToString(memoryStream.ToArray()); } catch (Exception e) { System.Console.WriteLine(e); return null; } }
Antworten
-
Hallo Andreas,
- Danke für den besten Tipp! :-)
Du meintest, Deine Objekte über XML zu serialisieren. Ja, das spart sicher Zeit, freut mich, wenn es hilfreich war.
- Ich könnte doch jede x-beliebige Struktur jetzt so übertragen.
Sehe ich das richtig? Oder müsste ich was beachten?
Server -- Serialize -- Client. - Das selbst zu parsen, analysieren wäre richtig zeitaufwendig gewesen.
- Also nicht nur Listen oder einzelne Objekte.
ja, im ~Prinzip (theoretisch) kannst Du jedes Objekt so (entsprechend) serialisieren, aber der XmlSerializer hat Grenzen, es müssen Typen sein, die "XML-serialisierbar" sind - und das sind nicht alle. Andere Serialisierungs-Klassen haben teilweise noch weitergehende Möglichkeiten, aber wenn Du die nicht benötigst, ist der XmlSerializer aber eine gute Wahl.
[Einführung in die XML-Serialisierung]
http://msdn.microsoft.com/de-de/library/182eeyhh.aspxAndere typische Serialisierungs-Klassen sind SoapFormatter, BinaryFormatter, DataContractSerializer und die IXmlSerializable Schnittstelle.
- Evtl. kannst Du kurz noch den Thread beantworten.
ich schau mal, kann aber noch dauern.
ciao Frank- Als Antwort markiert Andreas Bauer2 Dienstag, 1. März 2011 10:08
Alle Antworten
-
Hallo Andreas,
- Danke für den besten Tipp! :-)
Du meintest, Deine Objekte über XML zu serialisieren. Ja, das spart sicher Zeit, freut mich, wenn es hilfreich war.
- Ich könnte doch jede x-beliebige Struktur jetzt so übertragen.
Sehe ich das richtig? Oder müsste ich was beachten?
Server -- Serialize -- Client. - Das selbst zu parsen, analysieren wäre richtig zeitaufwendig gewesen.
- Also nicht nur Listen oder einzelne Objekte.
ja, im ~Prinzip (theoretisch) kannst Du jedes Objekt so (entsprechend) serialisieren, aber der XmlSerializer hat Grenzen, es müssen Typen sein, die "XML-serialisierbar" sind - und das sind nicht alle. Andere Serialisierungs-Klassen haben teilweise noch weitergehende Möglichkeiten, aber wenn Du die nicht benötigst, ist der XmlSerializer aber eine gute Wahl.
[Einführung in die XML-Serialisierung]
http://msdn.microsoft.com/de-de/library/182eeyhh.aspxAndere typische Serialisierungs-Klassen sind SoapFormatter, BinaryFormatter, DataContractSerializer und die IXmlSerializable Schnittstelle.
- Evtl. kannst Du kurz noch den Thread beantworten.
ich schau mal, kann aber noch dauern.
ciao Frank- Als Antwort markiert Andreas Bauer2 Dienstag, 1. März 2011 10:08