读书人

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

发布时间: 2013-07-20 11:07:48 作者: rapoo

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; }
}

读书人网 >.NET Framework

热点推荐