private void SerializeObject(TextWriter textWriter, object obj, object context)
        {
            XmlSerializer serializer = m_factory[obj.GetType()];

            using (var xmlWriter = (HealthVaultXmlWriter)HealthVaultXmlWriter.Create(textWriter))
            {
                xmlWriter.Context = context;
                serializer.Serialize(xmlWriter, obj);
            }
        }
 private void SerializeRequest(TextWriter textWriter, Request request, object context)
 {
     // Delegate error checking to serializer
     using (var xmlWriter = (HealthVaultXmlWriter)HealthVaultXmlWriter.Create(textWriter))
     {
         xmlWriter.AllowRootPrefix = true;
         xmlWriter.Context         = context;
         m_requestSerializer.Serialize(xmlWriter, request, m_requestNamespaces);
     }
 }
        public static string ToXml(this object obj, string root)
        {
            using (var textWriter = new StringWriter())
            {
                XmlSerializer serializer = new XmlSerializer(
                    obj.GetType(),
                    new XmlRootAttribute(root));

                using (var xmlWriter = (HealthVaultXmlWriter)HealthVaultXmlWriter.Create(textWriter))
                {
                    xmlWriter.Context = null;
                    serializer.Serialize(xmlWriter, obj);
                }

                return(textWriter.ToString());
            }
        }