diff --git a/ICD.Common.Utils/Xml/IcdXmlConvert.cs b/ICD.Common.Utils/Xml/IcdXmlConvert.cs
index 88c56a9..717ed97 100644
--- a/ICD.Common.Utils/Xml/IcdXmlConvert.cs
+++ b/ICD.Common.Utils/Xml/IcdXmlConvert.cs
@@ -21,22 +21,34 @@ namespace ICD.Common.Utils.Xml
///
public static string SerializeObject(string elementName, object value)
{
- if (value == null)
- return ToString(null);
-
- IXmlConverter converter = XmlConverterAttribute.GetConverterForInstance(value);
-
StringBuilder builder = new StringBuilder();
using (IcdStringWriter stringWriter = new IcdStringWriter(builder))
{
using (IcdXmlTextWriter writer = new IcdXmlTextWriter(stringWriter))
- converter.WriteXml(writer, elementName, value);
+ SerializeObject(writer, elementName, value);
}
return builder.ToString();
}
+ ///
+ /// Serializes the given instance to xml.
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static void SerializeObject(IcdXmlTextWriter writer, string elementName, object value)
+ {
+ if (writer == null)
+ throw new ArgumentNullException("writer");
+
+ IXmlConverter converter = XmlConverterAttribute.GetConverterForInstance(value);
+
+ converter.WriteXml(writer, elementName, value);
+ }
+
///
/// Deserializes the given xml to an instance of the given type.
///