Si può provare questo utilizzando LINQ:
List<int> Branches = new List<int>();
Branches.Add(1);
Branches.Add(2);
Branches.Add(3);
XElement xmlElements = new XElement("Branches", Branches.Select(i => new XElement("branch", i)));
System.Console.Write(xmlElements);
System.Console.Read();
uscita:
<Branches>
<branch>1</branch>
<branch>2</branch>
<branch>3</branch>
</Branches>
Ho dimenticato di menzionare: è necessario includere lo spazio dei nomi using System.Xml.Linq;
.
EDIT:
XElement xmlElements = new XElement("Branches", Branches.Select(i => new XElement("branch", new XAttribute("id", i))));
uscita:
<Branches>
<branch id="1" />
<branch id="2" />
<branch id="3" />
</Branches>
Inizia da qui poi tornare con una domanda specifica: http://msdn.microsoft.com/en-us/library/system.xml.serialization.aspx –