From e3d1e3b48ccf239aa549723f86390fc2c0f2b066 Mon Sep 17 00:00:00 2001 From: starfighter83 Date: Mon, 14 Mar 2011 12:32:00 -0100 Subject: [PATCH] Adds SerializationHelper to userControlWrapper (makes it super easy to do xml properties with uc wrapper) --- .../umbraco.editorControls.csproj | 1 + .../userControlWrapper/SerializationHelper.cs | 34 +++++++++++++++++++ 2 files changed, 35 insertions(+) create mode 100644 components/editorControls/userControlWrapper/SerializationHelper.cs diff --git a/components/editorControls/umbraco.editorControls.csproj b/components/editorControls/umbraco.editorControls.csproj index 4206304045..5005307577 100644 --- a/components/editorControls/umbraco.editorControls.csproj +++ b/components/editorControls/umbraco.editorControls.csproj @@ -349,6 +349,7 @@ + diff --git a/components/editorControls/userControlWrapper/SerializationHelper.cs b/components/editorControls/userControlWrapper/SerializationHelper.cs new file mode 100644 index 0000000000..abae40c3f6 --- /dev/null +++ b/components/editorControls/userControlWrapper/SerializationHelper.cs @@ -0,0 +1,34 @@ +using System; +using System.Text; +using System.Xml.Serialization; +using System.IO; +using System.Xml; + +namespace umbraco.editorControls.userControlWrapper +{ + public class SerializationHelper + { + public static object ValueFromXmlString(object value, Type type) + { + XmlSerializer ser = new XmlSerializer(value.GetType()); + StringReader strRdr = new StringReader(value.ToString()); + XmlTextReader xmlRdr = new XmlTextReader(strRdr); + object obj = ser.Deserialize(xmlRdr); + xmlRdr.Close(); + strRdr.Close(); + return obj; + } + + public static string ValueToXmlString(object value) + { + MemoryStream str = new MemoryStream(); + XmlSerializer ser = new XmlSerializer(value.GetType()); + ser.Serialize(str, value); + str.Seek(0, System.IO.SeekOrigin.Begin); + XmlDocument doc = new XmlDocument(); + doc.Load(str); + str.Close(); + return doc.InnerXml; + } + } +}