.NET SOAP in der Praxis

Zur Speicherung von Objekten, Sammlungen oder beliebigen anderen Datenstrukturen kann man den Soap Formatter verwenden. Er konvertiert die Daten (und deren Struktur) in eine XML-Datei.

Man kann nicht einfach auf den für die XML-Serialisierung erforderlichen Namensraum verweisen, indem man eine Imports-Anweisung verwendet. Stattdessen muss man das Menü Project > Add Reference wählen, die Liste der Komponenten durchsuchen und System.Runtime.Serialization.Formatters.Soap zu dem Projekt hinzufügen. Danach erstellt man ein neues Windows-artiges Visual Basic .NET-Projekt und gibt den Code aus Listing A ein.

Wie man beim Ausführen des Beispielcodes sehen kann, wird die erste ArrayList im SOAP-Format in einer Datei auf der Festplatte gespeichert, dann werden eine neue ArrayList namens ReadBack deklariert und die Daten wieder zurück in dieses neue Array eingelesen.

Nun kann man sich die SOAP-Datei auf der Festplatte anschauen. Diese ist sogar noch wortreicher, als man es üblicherweise von XML-Dateien gewohnt ist, weil sie noch zusätzliche SOAP-Metadaten enthält. Die ArrayList, wie sie in der SOAP-Datei gespeichert ist, findet sich in Listing B.

Die ArrayList ist eine proprietäre Microsoft-Struktur, von daher erfordert sie zusätzliche Anmerkungen und Referenzen, etwa xsd:anyType[16]. Hätte man ein traditionelles Array statt einer ArrayList serialisiert, wäre die Sache einfacher. Beispielsweise kann jedes Element einer ArrayList von einem unterschiedlichen Datentyp sein, so dass bei der Serialisierung der Datentyp jedes einzelnen Elements angegeben werden muss (xsi:type=“SOAP-ENC:string“). Im Gegensatz dazu kann ein traditionelles String-Array nur Strings enthalten, so dass die Serialisierung einfacher ist. Hier ein klassisches String-Array, wie es in einer SOAP-Datei gespeichert würde:

Page: 1 2 3 4

ZDNet.de Redaktion

Recent Posts

November-Patchday: Microsoft schließt Zero-Day-Lücken in Windows

Betroffen sind Windows und Windows Server. Microsoft patcht aber auch Schwachstellen in Excel, Word und…

2 Tagen ago

LG zeigt elastisches OLED-Display

Es lässt sich um bis zu 50 Prozent dehnen. Allerdings besitzt es eine deutliche geringere…

2 Tagen ago

BSI zu Cybersicherheit: Bedrohungslage bleibt angespannt

Allerdings nimmt auch die Resilienz gegenüber Cyberattacken zu. Das BSI hat außerdem die Cybersicherheit anstehender…

2 Tagen ago

IT-Ausgaben in Europa steigen 2025 voraussichtlich um 8,7 Prozent

Es ist das größte Wachstum in einem Jahr seit 2021. Unter anderem lässt das Interesse…

3 Tagen ago

Magento-Agentur für große Webshops: Was sollte die Magento-Agentur leisten können?

Magento zählt zu den führenden Shopsystemen in der Welt. Es punktet mit hoher Flexibilität und…

3 Tagen ago

Trojaner tarnt sich als AutoCAD

SteelFox gelangt über angebliche Cracks für kostenpflichtige Anwendungen auf die Rechner seiner Opfer. Betroffen sind…

3 Tagen ago