Mega Code Archive

 
Categories / C# / Web Services
 

Illustrates SOAP serialization

/* Mastering Visual C# .NET by Jason Price, Mike Gunderloy Publisher: Sybex; ISBN: 0782129110 */  /*   Example15_19.cs illustrates SOAP serialization */ using System; using System.IO; using System.Runtime.Serialization; using System.Runtime.Serialization.Formatters.Soap; // the Customer class gives us something to serialize [Serializable] class Customer {   // some private data members   private int CustomerNumber;   private string CustomerName;   private string CustomerCountry;   // the WriteCustomer method formats info to the screen   public void WriteCustomer()   {     Console.WriteLine("Customer Number: " + this.CustomerNumber);     Console.WriteLine("Customer Name: " + this.CustomerName);     Console.WriteLine("Customer Country: " + this.CustomerCountry);   }   // the constructor accepts all the info to create a customer   public Customer(     int newCustomerNumber,      string newCustomerName,      string newCustomerCountry)   {     this.CustomerNumber = newCustomerNumber;     this.CustomerName = newCustomerName;     this.CustomerCountry = newCustomerCountry;   } } public class Example15_20  {   public static void Main()    {     // create a new customer and dump to screen     Customer MyCustomer = new Customer(1, "X Corporation", "France");     MyCustomer.WriteCustomer();     // Create a FileStream to hold the serialized customer     FileStream serializeStream = new FileStream("c:\\MyCustomer.xml",        FileMode.Create);     // use SOAP formatting     SoapFormatter sf = new SoapFormatter();     // serialize the object     sf.Serialize(serializeStream, MyCustomer);     serializeStream.Flush();     serializeStream.Close();     // retrieve the serialized version to a second object and dump that     FileStream retrieveStream = new FileStream("c:\\MyCustomer.xml",       FileMode.Open);     Customer NewCustomer = (Customer) sf.Deserialize(retrieveStream);     NewCustomer.WriteCustomer();   } }