public string SerializeToString(RepositoryItemBase ri) { if (ri != null) { using (MemoryStream output = new MemoryStream()) { using (XmlTextWriter xml = new XmlTextWriter(output, Encoding.UTF8)) { xml.WriteStartDocument(); xml.WriteWhitespace("\n"); // We serialize only the top item and add header to it if (ri.RepositoryItemHeader == null) { ri.InitHeader(); } // Header xml.WriteStartElement(cGingerRepositoryItem); // Write the object data xmlwriteHeader(xml, ri); xml.WriteWhitespace("\n"); xmlwriteObject(xml, ri); xml.WriteEndElement(); xml.WriteEndDocument(); } string result = Encoding.UTF8.GetString(output.ToArray()); return(result); } } else { return(string.Empty); } }