Ejemplo n.º 1
0
        public void TestJObject02()
        {
            var employee = new EmployeeJson
            {
                Name       = "Alan",
                Department = "hardware",
                Married    = true,
                Position   = "manager",
                Dob        = new DateTime(1975, 10, 2),
                Site       = Site.London,
                Age        = 40
            };
            var context = JsonMapper.NewContext().UseDateFormat(string.Empty).For <EmployeeJson>(y => y.MapProperty(x => x.Dob).With("Birthday"));
            var json    = context.ToJson(employee);
            var engine  = new ParseEngine();
            var emp     = engine.Parse(json) as JObject;

            Assert.NotNull(emp);
            Assert.Equal("Alan", emp.GetString("Name"));
            Assert.Equal("hardware", emp.GetString("Department"));
            Assert.Equal("manager", emp.GetString("Position"));
            Assert.Equal(40, emp.GetInt32("Age"));
            Assert.True(emp.GetBool("Married"));
            var dt = DateTime.Parse(emp.GetString("Birthday"));

            Assert.Equal(1975, dt.Year);
            Assert.Equal(10, dt.Month);
            Assert.Equal(2, dt.Day);
        }
Ejemplo n.º 2
0
        public void TestObjectConverter01()
        {
            var employee = new EmployeeJson
            {
                Age        = 46,
                Department = "Sales",
                Dob        = new DateTime(1970, 4, 3),
                Married    = true,
                Name       = "Ben",
                Position   = "Director",
                Site       = Site.NY
            };
            var json    = JsonMapper.ToJson(employee, new EmployeeObjectConverter());
            var jsonObj = JsonMapper.Parse(json);

            Assert.Equal("Ben", (string)jsonObj.Name);
            Assert.Equal("Sales", (string)jsonObj.Department);
            Assert.Equal("Director", (string)jsonObj.Position);
            Assert.Equal(46, (int)jsonObj.Age);
            Assert.Equal("NY", (string)jsonObj.Site);
            Assert.True((bool)jsonObj.Married);
            var dob = DateTime.Parse((string)jsonObj.Dob);

            Assert.Equal(1970, dob.Year);
            Assert.Equal(4, dob.Month);
            Assert.Equal(3, dob.Day);
        }
Ejemplo n.º 3
0
        public void TestJsonConverter02()
        {
            var jsonStr =
                "{\"Name\": \"Ben\", \"Position\": \"Director\", \"Married\": true, \"Dob\": \"1970/4/3\", \"Department\": \"Sales\", \"Age\": 46, \"Site\": \"NY\"}";
            var employee = JsonMapper.To <EmployeeJson>(jsonStr, x =>
            {
                var json       = x as JObject;
                var emp        = new EmployeeJson();
                emp.Age        = json.GetInt32("Age");
                emp.Department = json.GetString("Department");
                emp.Dob        = DateTime.Parse(json.GetString("Dob"));
                emp.Married    = json.GetBool("Married");
                emp.Name       = json.GetString("Name");
                emp.Position   = json.GetString("Position");
                emp.Site       = json.GetEnum <Site>("Site");
                return(emp);
            });

            Assert.Equal(46, employee.Age);
            Assert.Equal("Sales", employee.Department);
            Assert.Equal(1970, employee.Dob.Year);
            Assert.Equal(4, employee.Dob.Month);
            Assert.Equal(3, employee.Dob.Day);
            Assert.Equal("Ben", employee.Name);
            Assert.Equal("Director", employee.Position);
            Assert.True(employee.Married);
        }
Ejemplo n.º 4
0
        public void TestObjectConverter02()
        {
            var employee = new EmployeeJson
            {
                Age        = 46,
                Department = "Sales",
                Dob        = new DateTime(1970, 4, 3),
                Married    = true,
                Name       = "Ben",
                Position   = "Director",
                Site       = Site.NY
            };
            var json = JsonMapper.ToJson(employee, emp =>
            {
                var obj = new JObject();
                obj.SetString("Name", emp.Name);
                obj.SetString("Position", emp.Position);
                obj.SetString("Department", emp.Department);
                obj.SetString("Site", emp.Site.ToString());
                obj.SetInt32("Age", emp.Age);
                obj.SetBool("Married", emp.Married);
                obj.SetString("Dob", emp.Dob.ToString());
                return(obj);
            });
            var jsonObj = JsonMapper.Parse(json);

            Assert.Equal("Ben", (string)jsonObj.Name);
            Assert.Equal("Sales", (string)jsonObj.Department);
            Assert.Equal("Director", (string)jsonObj.Position);
            Assert.Equal(46, (int)jsonObj.Age);
            Assert.Equal("NY", (string)jsonObj.Site);
            Assert.True((bool)jsonObj.Married);
            var dob = DateTime.Parse((string)jsonObj.Dob);

            Assert.Equal(1970, dob.Year);
            Assert.Equal(4, dob.Month);
            Assert.Equal(3, dob.Day);
        }