首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET Framework >

json字符串转换成对象有关问题

2013-07-20 
json字符串转换成对象问题转换方法: private T JsonToObjectT(string jsonStr){DataContractJsonSeriali

json字符串转换成对象问题
转换方法:


 private T JsonToObject<T>(string jsonStr)
    {
      
        DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(T));
        MemoryStream ms = new MemoryStream(System.Text.Encoding.UTF8.GetBytes(jsonStr));
        T jsonObject = (T)ser.ReadObject(ms);
        ms.Close();
        return jsonObject;
    }


使用DataContractJsonSerializer不能将bool值正常转换,明明是false值,转换成变为了true,
求大神解决方案,不使用第三方的组件netjson是否可以处理
[解决办法]
你提供的信息太少,没法分析, 我写的小测试程序没有问题:


       private void Form1_Load(object sender, EventArgs e)
        {
            string jsonString1 = @"{""Description"":""this is a test"",""Enable"":""false"",""Title"":""test""}";

            TestClass t1 = JsonToObject<TestClass>(jsonString1);
        }

        private T JsonToObject<T>(string jsonStr)
        {
            DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(T));
            MemoryStream ms = new MemoryStream(System.Text.Encoding.UTF8.GetBytes(jsonStr));
            T jsonObject = (T)ser.ReadObject(ms);
            ms.Close();
            return jsonObject;
        }

TestClass的定义:



    public class TestClass
    {
        public string Title { get; set; }
        public string Description { get; set; }
        public bool Enable { get; set; }
    }

热点排行