示例#1
0
        public void TestMethod1()
        {
            string xml = @"<Current Name=""Poul"" Age=""21""><Credential Key=""123""/></Current>";

            var mapper = new XmlMapper <Current>();

            mapper.AddMapping("Name", c => c.Name);
            mapper.AddMapping("Age", c => c.Age);
            mapper.AddMapping("Credential", c => c.Credential);
            mapper.AddMapping("Key", c => c.Credential.Key);
            var current = new Current();
            var doc     = XDocument.Parse(xml);
            var result  = doc.Elements().Where(c => c.Attribute("Name") != null);

            current.GetType().GetProperty("Name").SetValue(current, result.First().Attribute("Name").Value);
            current.GetType().GetProperty("Age").SetValue(current, int.Parse(result.First().Attribute("Age").Value));
            Assert.AreEqual("Poul", current.Name);
        }