From 4a2c218e29ca49b1e9e0718b174c1f17c96a5dda Mon Sep 17 00:00:00 2001 From: alcexhim Date: Fri, 5 Feb 2016 17:06:55 -0500 Subject: [PATCH] Provide method to get an object from standardized XML element --- .../DataFormats/Markup/XML/XMLDataFormat.cs | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/CSharp/Libraries/UniversalEditor.Essential/DataFormats/Markup/XML/XMLDataFormat.cs b/CSharp/Libraries/UniversalEditor.Essential/DataFormats/Markup/XML/XMLDataFormat.cs index f1491864..05849983 100644 --- a/CSharp/Libraries/UniversalEditor.Essential/DataFormats/Markup/XML/XMLDataFormat.cs +++ b/CSharp/Libraries/UniversalEditor.Essential/DataFormats/Markup/XML/XMLDataFormat.cs @@ -1576,5 +1576,34 @@ namespace UniversalEditor.DataFormats.Markup.XML } return String.Empty; } + + public static object GetXMLValue(MarkupTagElement tag) + { + if (tag == null) return null; + + MarkupAttribute attType = tag.Attributes["xsi:type"]; + if (attType != null) + { + switch (attType.Value) + { + /* + case "xsd:string": + { + return tag.Value; + } + */ + case "xsd:integer": + { + return Int32.Parse(tag.Value); + } + } + } + + MarkupAttribute attNil = tag.Attributes["xsi:nil"]; + // return null if xsi:nil attribute is present + if (attNil != null) return null; + + return tag.Value; + } } }