Serialise ICollection object to XMLDocument
XmlDocument doc = new XmlDocument();
using (MemoryStream stream = new MemoryStream())
{
XmlSerializer x = new XmlSerializer(typeof(T));
x.Serialize(stream, list);
stream.Seek(0, System.IO.SeekOrigin.Begin); //without this there is a 'missing' root element error
doc.Load(stream);
}