Serialize object to SOAP message : SOAP Serialization « Network « C# / CSharp Tutorial






using System;
using System.IO;
using System.Collections;
using System.Runtime.Serialization;
using System.Runtime.Serialization.Formatters.Soap;

[Serializable]
public class MyElement
{
    public MyElement(string name)
    {
        this.name = name;
        this.cacheValue = 15;
    }
    public override string ToString()
    {
        return(String.Format("{0}: {1}", name, cacheValue));
    }
    string name;

    [NonSerialized]
    int cacheValue;
}

class MainClass
{
    public static void Main()
    {
        MyElement ele = new MyElement("name");
        
        Console.WriteLine("Initial value");
        Console.WriteLine("{0}", ele);
        
        // write to SOAP (XML), read it back
        Stream streamWrite = File.Create("MyElement.xml");
        SoapFormatter soapWrite = new SoapFormatter();
        soapWrite.Serialize(streamWrite, ele);
        streamWrite.Close();
        
        Stream streamRead = File.OpenRead("MyElement.xml");
        SoapFormatter soapRead = new SoapFormatter();
        MyElement element = (MyElement) soapRead.Deserialize(streamRead);
        streamRead.Close();
        
        Console.WriteLine("Values after SOAP serialization");
        Console.WriteLine("{0}", element);
    }
}
Initial value
name: 15
Values after SOAP serialization
name: 0








33.31.SOAP Serialization
33.31.1.Serializes a class with Soap
33.31.2.Serialize object to SOAP message
33.31.3.Serialization of an object list in SOAP
33.31.4.Soap Custom Serialization
33.31.5.Invoke web service with Http Get
33.31.6.Call Soap service
33.31.7.Use SoapAttributeOverrides
33.31.8.Deserialize Soap type xml