反序列化json对象不起作用 [英] deserialize json object does not work
本文介绍了反序列化json对象不起作用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想将json对象反序列化为我的学生班级
I want to deserialize my json object to my student class
var result = JsonConvert.DeserializeObject<Student>(data);
我的json数据
{
"student":{
"fname":"997544",
"lname":"997544",
"subject":"IT",
"grade":"F"
}
}
我的学生班级
[Serializable]
public class Student
{
[JsonProperty("fname")]
public string FirstName{ get; set; }
[JsonProperty("lname")]
public string LastName{ get; set; }
[JsonProperty("subject")]
public string Subject { get; set; }
[JsonProperty("grade")]
public string Grade { get; set; }
}
代码不起作用,错误提示:
The code does not work, the error says:
无法将当前JSON对象(例如{ name: value})反序列化为
类型,因为该类型需要JSON数组(例如[1,2,3])正确反序列化。
Cannot deserialize the current JSON object (e.g. {"name":"value"}) into type because the type requires a JSON array (e.g. [1,2,3]) to deserialize correctly.
推荐答案
您下载的json,然后您需要为其创建另一个模型
类
if you have to use your downloaded json then you need to create another model class for it
[Serializable]
public class Student
{
[JsonProperty("fname")]
public string FirstName{ get; set; }
[JsonProperty("lname")]
public string LastName{ get; set; }
[JsonProperty("subject")]
public string Subject { get; set; }
[JsonProperty("grade")]
public string Grade { get; set; }
}
[Serializable]
public class NewModel
{
public Student Student { get; set; }
}
然后反序列化
var result = JsonConvert.DeserializeObject<NewModel>(data);
这篇关于反序列化json对象不起作用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文