Assume you have a class structure like this:
public abstract class Base{ private int id; private string name; [XmlElement("id")] public int Id { get { return id; } set { id = value; } } [XmlElement("name")] public virtual string Name { get { return name; } set { name = value; } }} public class Derived : Base{ [XmlElement("newName")] public override string Name { get { return base.Name; } set { base.Name = value; } }}
public abstract class Base
{
private int id;
private string name;
[XmlElement("id")]
public int Id
get { return id; }
set { id = value; }
}
[XmlElement("name")]
public virtual string Name
get { return name; }
set { name = value; }
public class Derived : Base
[XmlElement("newName")]
public override string Name
get { return base.Name; }
set { base.Name = value; }
static void Main(string[] args)
{ Derived d = new Derived(); d.Id = 23; d.Name = "Dan"; string xml = GetXMLFromObject(d); Console.WriteLine(xml);}
Derived d = new Derived();
d.Id = 23;
d.Name = "Dan";
string xml = GetXMLFromObject(d);
Console.WriteLine(xml);
Download the sample application here to play with it.
Disclaimer The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.