可能重复:
JSON 的 C# 自动属性反序列化
大家好,我正在尝试反序列化 json 数据
json Data: {"Status":[{"StatusValue":"Test1","StatusValue1":"Test2","StatusValue2":"Test3","StatusValue3":"Test4"},
{"StatusValue":"Test5","StatusValue1":"Test6","StatusValue2":"Test7","StatusValue3":"Test8"},
{"StatusValue":"Test9","StatusValue1":"Test10","StatusValue2":"Test11","StatusValue3":"Test12"}]}
在服务器端 JSON 数据很好,但我无法反序列化它。我在下面编写的用于反序列化 Json 数据的代码。
public static T JsonDeserialize<T>(string jsonString)
{
DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(T));
MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(jsonString));
T obj = (T)ser.ReadObject(ms);
return obj;
}
和我单独创建的类:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Xml.Serialization;
namespace CustomDataType
{
[Serializable]
[XmlRoot("StatusMain")]
public class Status
{
[XmlElement("statusvalue")]
public string StatusValue { get; set; }
[XmlElement("statusvalue1")]
public string StatusValue1 { get; set; }
[XmlElement("statusvalue2")]
public string StatusValue2 { get; set; }
[XmlElement("statusvalue3")]
public string StatusValue3 { get; set; }
public static Status Empty
{
get
{
var schedule = new Status();
schedule = null;
return schedule;
}
}
}
}
我正在使用的类:我编写了如下代码
Status test = new Status();
test = CustomDataTypes.JsonDeserialize<Status>(JsonDataValue);
我得到的错误: