KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I have the following (as an example) XML file and XSD. <?xml version="1.0" encoding="utf-8" ?> <foo> <DateVal>2010-02-18T01:02:03</DateVal> <TimeVal>PT10H5M3S</TimeVal> </foo> and version="1.0" encoding="utf-8"?> <xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="foo"> <xs:complexType> <xs:sequence> <xs:element name="DateVal" type="xs:dateTime" /> <xs:element name="TimeVal" type="xs:duration" /> </xs:sequence> </xs:complexType> </xs:element> </xs:schema> Then the following C# code: static void Main(string[] args) { XmlDocument xd = new XmlDocument(); XmlSchema xs; using (var fs = File.OpenRead(FilePath + "SimpleFields.xsd")) { xs = XmlSchema.Read(fs, null); } xd.Schemas.Add(xs); xd.Load((FilePath + "SimpleFields.xml")); xd.Validate(null); var el_root = xd.DocumentElement; var el_date = (XmlElement)el_root.SelectSingleNode("./DateVal"); //WANTED: el_date.Value = 2010-02-18 01:02:03 (as a DateTime Object) //ACTUAL: el_date.InnerText="2010-02-18T01:02:03" var el_duration = (XmlElement)el_root.SelectSingleNode("./TimeVal"); //WANTED: el_date.Value = 10 hours, 5 minutes, 3 seconds (as a TimeSpan Object) //ACTUAL: el_date.InnerText="PT10H5M3S" Console.WriteLine("DONE"); Console.ReadLine(); } How can I read the data as strongly typed objects ? I will be targetting a WindowsMobile device, but this shouldn't need to affect the answer too much. (can be .NET 2.0 or 3.5 ... Not sure if Sstem.Xml.Linq will help or not)
Tags (comma-separated)
Save Edits
Cancel