public void Serialize(RequestRootBase root, XmlWriter writer) { writer.WriteStartDocument(); writer.WriteStartElement(RequestRootElementName); writer.WriteStartElement(ActionElementName); var typeName = BindToName(root.RequestType); writer.WriteAttributeString(TypeAttributeName, typeName); var serializer = new XmlSerializer(root.RequestType); var rootNameSpace = DefaultRootXmlElementNamespace(root.RequestType); var ns = new XmlSerializerNamespaces(); if (string.IsNullOrEmpty(rootNameSpace)) { ns.Add("", ""); } else { ns.Add("", rootNameSpace); } serializer.Serialize(writer, root.RequestObject, ns); writer.WriteEndElement(); writer.WriteEndElement(); writer.WriteEndDocument(); }
public string SerializeToString(RequestRootBase root) { using (var textWriter = new StringWriter()) { var settings = new XmlWriterSettings() { Indent = true, IndentChars = " " }; // For cosmetic purposes. using (var xmlWriter = XmlWriter.Create(textWriter, settings)) Serialize(root, xmlWriter); return(textWriter.ToString()); } }