xml con c#

Alpha
01 de Diciembre del 2005
necesito que alguien me explique (si me pueden dar un ejemplo seria mucho mejor) como puedo crear un documento xml bien formado en c#, usando por ejemplo un XmlDocument (u otro tipo) y no un XmlWriter, que yo pueda tener almacenado en una variable y no en un fichero, para luego pasarselo como parametro a otro procedimiento que hara algo con el?

muchas gracias de antemano

CCL
01 de Diciembre del 2005
XmlTextWriter xmlText = new XmlTextWriter(@"c:prueba.xml",null);
xmlText.WriteDocType("tierra",null, null, null);
xmlText.WriteComment("Comentario para comentar comentarios");
xmlText.WriteStartElement("viajes","viajes");
xmlText.WriteElementString("parametro1", "tren");
xmlText.WriteElementString("usuario", "user");
xmlText.WriteElementString("clave", "****");
xmlText.WriteStartElement("aloj","alojamientos");
xmlText.WriteElementString("tres", "hotel");
xmlText.WriteElementString("cuatro", "apartamento");
xmlText.WriteElementString("cinco", "camping");
xmlText.WriteElementString("seis", "hostal");
xmlText.WriteEndElement();
xmlText.WriteStartElement("reg","regimen");
xmlText.WriteElementString("uno", "desayuno");
xmlText.WriteElementString("dos", "media pensi贸n");
xmlText.WriteElementString("tres", "pensi贸n completa");
xmlText.WriteEndElement();
xmlText.WriteStartElement("otros","otros");
xmlText.WriteElementString("uno", "excursiones");
xmlText.WriteElementString("dos", "folletos");
xmlText.WriteStartElement("compl","complementos");
xmlText.WriteElementString("uno", "televidor");
xmlText.WriteElementString("dos", "aire acondicionado");
xmlText.WriteEndElement();
xmlText.WriteEndElement();

xmlText.WriteEndElement();

xmlText.Flush();
xmlText.Close();
}
catch (System.IO.IOException p)
{
System.Diagnostics.Trace.WriteLine(p);
p.Message.ToString();
}