Class File :
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml.Serialization;
namespace WindowsFormsApplication2
{
[Serializable]
[XmlRoot(ElementName = "Person")]
public class clsRoot
{
public clsRoot() { Address = new Address(); }
[XmlElement("Name")]
public string Name { get; set; }
[XmlElement("Job")]
public string Job { get; set; }
public Address Address { get; set; }
}
[Serializable]
[XmlRoot(ElementName = "Address")]
public class Address
{
public Address() { }
public Permanant Permanant { get; set; }
public Current Current { get; set; }
}
[Serializable]
[XmlRoot(ElementName = "Permanant")]
public class Permanant
{
public Permanant() { }
[XmlAttribute("Type")]
public string Type { get; set; }
public string Address { get; set; }
public string City { get; set; }
public string State { get; set; }
public string PinCode { get; set; }
}
[Serializable]
[XmlRoot(ElementName = "Current")]
public class Current
{
public Current() { }
[XmlAttribute("Type")]
public string Type { get; set; }
public string Address { get; set; }
public string City { get; set; }
public string State { get; set; }
public string PinCode { get; set; }
}
}
Form with Read/Write button
private void Generate_Click(object sender, EventArgs e)
{
clsRoot clsRoot = new clsRoot();
clsRoot.Name = "Ajay Patel";
clsRoot.Job = "Software Developer";
Address ADDr = new Address();
Permanant PR = new Permanant();
Current Cur = new Current();
PR.Type = "Permanant";
PR.Address = "Panchvati";
PR.City = "Kalol";
PR.State = "Gujarat";
PR.PinCode = "382722";
Cur.Type = "Current";
Cur.Address = "Panchvati";
Cur.City = "Kalol";
Cur.State = "Gujarat";
Cur.PinCode = "382722";
ADDr.Permanant = PR;
ADDr.Current = Cur;
clsRoot.Address = ADDr;
System.Xml.Serialization.XmlSerializer xmlSerl = new
System.Xml.Serialization.XmlSerializer(clsRoot.GetType());
StreamWriter SW = new StreamWriter(txtXML.Text);
xmlSerl.Serialize(SW, clsRoot);
SW.Close();
}
private void txtXML_MouseDoubleClick(object sender,
MouseEventArgs e)
{
FileDilog.ShowDialog();
txtXML.Text = FileDilog.FileName;
}
private void txtRead_Click(object sender, EventArgs e)
{
clsRoot clsRoot = new clsRoot();
XmlSerializer xmlSerl = new XmlSerializer(clsRoot.GetType());
TextReader objTxtRead = new StreamReader(txtXML.Text);
clsRoot = (clsRoot)xmlSerl.Deserialize(objTxtRead);
objTxtRead.Close();
}
XML :
<?xml version="1.0" encoding="utf-8"?>
<Person xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Name>Ajay Patel</Name>
<Job>Software Developer</Job>
<Address>
<Permanant Type="Permanant">
<Address>Panchvati</Address>
<City>Kalol</City>
<State>Gujarat</State>
<PinCode>382722</PinCode>
</Permanant>
<Current Type="Current">
<Address>Panchvati</Address>
<City>Kalol</City>
<State>Gujarat</State>
<PinCode>382722</PinCode>
</Current>
</Address>
</Person>
No comments:
Post a Comment