Introduction
The following code sample shows how to use XML serialization attributes such as
SoapElement and SoapAttribute to generate custom SOAP
format in the resulting XML during sterilization. The code defines a class
named Institute and applies and XML serialization attributes to its
members to format the resulting XML while serializing an object of the
Institute class.
Code
public
class Institute
{
//Soap Custom Attribute Declaration
[SoapAttribute(AttributeName="Institute")]
public string
Name;
[SoapElement(ElementName =
"CorporateInstitute")]
public string
CorporateInstitute;
[SoapIgnore]
public string
InstituteID;
public override
string ToString()
{
//return base.ToString();
string send;
send="\nInstitute Name:"+this.Name;
send+="\nCorporate Institute:"+this.CorporateInstitute;
send+="\nInstitueID :"+this.InstituteID;
return send;
}
static void
Main(string[] args)
{
//Specify xml file
path
string file = "Institute.soap";
XmlTypeMapping maping=(new
SoapReflectionImporter().ImportTypeMapping(typeof(Institute)));
//XML Serializer Class Declaration for
serializing class institute
XmlSerializer XS =
new XmlSerializer(maping);
Institute IS =
new Institute();
IS.Name = "NIIT";
IS.InstituteID="2013";
IS.CorporateInstitute="Ghatkopar";
////Declarating of text writer
XmlTextWriter TW =
new XmlTextWriter(file,
Encoding.UTF8);
TW.Formatting=Formatting.Indented;
TW.WriteStartElement("InstituteInfo");
XS.Serialize(TW, IS);
TW.WriteEndElement();
TW.Flush();
TW.Close();
XmlTextReader TR =
new XmlTextReader(file);
TR.ReadStartElement("InstituteInfo");
Institute IS1 = (Institute)XS.Deserialize(TR);
TR.ReadEndElement();
TR.Close();
Console.WriteLine(IS1);
Console.ReadLine();
}
}