Anvisningar: Serialisera ett objekt som en SOAP-kodad XML-ström
Eftersom ett SOAP-meddelande skapas med XML XmlSerializer kan klassen användas för att serialisera klasser och generera kodade SOAP-meddelanden. Den resulterande XML-koden överensstämmer med avsnitt 5 i World Wide Web Consortium-dokumentet "Simple Object Access Protocol (SOAP) 1.1". När du skapar en XML-webbtjänst som kommunicerar via SOAP-meddelanden kan du anpassa XML-strömmen genom att använda en uppsättning särskilda SOAP-attribut för klasser och medlemmar i klasser. En lista över attribut finns i Attribut som styr kodad SOAP-serialisering.
Serialisera ett objekt som en SOAP-kodad XML-ström
Skapa klassen med hjälp av XML-schemadefinitionsverktyget (Xsd.exe).
Använd ett eller flera av de specialattribut som finns i
System.Xml.Serialization
. Se listan i "Attribut som styr kodad SOAP-serialisering".Skapa en
XmlTypeMapping
genom att skapa en nySoapReflectionImporter
och anropaImportTypeMapping
metoden med den serialiserade klassens typ.I följande kodexempel anropas
ImportTypeMapping
-metoden förSoapReflectionImporter
klassen för att skapa enXmlTypeMapping
.' Serializes a class named Group as a SOAP message. Dim myTypeMapping As XmlTypeMapping = New SoapReflectionImporter().ImportTypeMapping(GetType(Group))
// Serializes a class named Group as a SOAP message. XmlTypeMapping myTypeMapping = new SoapReflectionImporter().ImportTypeMapping(typeof(Group));
Skapa en instans av
XmlSerializer
klassen genom att skickaXmlTypeMapping
till XmlSerializer(XmlTypeMapping) konstruktorn.Dim mySerializer As XmlSerializer = New XmlSerializer(myTypeMapping)
XmlSerializer mySerializer = new XmlSerializer(myTypeMapping);
Serialize
Anropa metoden ellerDeserialize
.
Exempel
' Serializes a class named Group as a SOAP message.
Dim myTypeMapping As XmlTypeMapping =
New SoapReflectionImporter().ImportTypeMapping(GetType(Group))
Dim mySerializer As XmlSerializer = New XmlSerializer(myTypeMapping)
// Serializes a class named Group as a SOAP message.
XmlTypeMapping myTypeMapping =
new SoapReflectionImporter().ImportTypeMapping(typeof(Group));
XmlSerializer mySerializer = new XmlSerializer(myTypeMapping);