public object Copy(object source) { if (source == null) { return(null); } var asXml = (string)XmlSerialiser.SerialiseWithoutNamespacesAndHeaderWithoutLinebreaks(source, source.GetType()); return(XmlSerialiser.Deserialise(asXml, source.GetType())); }