using System.Xml.Serialization;
public static void Main()
var result = new Result()
FOO = new ElementsWrapper {
Elements = new XElement[] {
new XElement( "BAR", "Hello World"),
new XElement( "BAR2", "Hello World"),
new XElement( "BAR3", "Hello World"),
Console.WriteLine(result);
[XmlRoot(ElementName = "RESULT", Namespace = "", IsNullable = false)]
public string Message { get; set; }
public ElementsWrapper FOO { get; set; }
public override string ToString()
var ser = new XmlSerializer(GetType());
using (var stream = new StringWriter())
ser.Serialize(stream, this);
return stream.ToString();
public class ElementsWrapper : IXmlSerializable
public XElement[] Elements { get; set; }
public XmlSchema GetSchema()
public void ReadXml(XmlReader reader)
public void WriteXml(XmlWriter writer)
foreach (var element in Elements)