using System;
using System.Xml.Serialization;
using System.IO;
public class MyValue1
{
[XmlText(typeof(string))]
[XmlElement(typeof(int))]
[XmlElement(typeof(double))]
public object[] All = new object[] { 321, "One", 2, 3.0, "Two" };
}
public class MyValue2
{
[XmlText(Type = typeof(MyValueType))]
public MyValueType Type;
}
public enum MyValueType
{
Small,
Medium,
Large
}
public class MyValue3
{
[XmlText(Type = typeof(DateTime))]
public DateTime CreationTime = DateTime.Now;
}
public class Test
{
static void Main()
{
Test t = new Test();
t.SerializeEnum("XmlText1.xml");
}
private void SerializeEnum(string filename)
{
XmlSerializer ser = new XmlSerializer(typeof(MyValue2));
MyValue2 myValue = new MyValue2();
myValue.Type = MyValueType.Medium;
TextWriter writer = new StreamWriter(filename);
ser.Serialize(writer, myValue);
writer.Close();
}
}