reader.Read()
et reader.ReadOuterXml()
être dans la même boucle sauterait une ligne. Essayez ceci :
using (XmlReader reader = cmd.ExecuteXmlReader())
{
reader.Read(); //For initial first read.
while (!reader.EOF)
{
results.Root.Add(XElement.Parse(reader.ReadOuterXml()));
count += 1;
}
}