如何解决JSON DeserializeObject 显示 0
你好,我在 c#(xamarin) 中遇到了一些问题 我遵循了有关分相的 XXX 教程。 我只需要价值。 有人能告诉我我是如何解决这个问题的吗?
我的 Json:
{
"Header":{
"Version":5,"Device":"80","Timestamp":1610066048
},"Data":{
"Inputs":[
{
"Number":2,"AD":"A","Value":{
"Value":62.0,"Unit":"1"
}
}
]
},"Status":"OK","Status code":0
}
C#
var client = new WebClient();
string json = client.DownloadString("https://XXXXXXX.com/heizung.PHP");
Value1 news = JsonConvert.DeserializeObject<Value1>(json);
Ausgabe.Text = news.Value;
我的班级
public class Header
{
public int Version { get; set; }
public string Device { get; set; }
public int Timestamp { get; set; }
}
public class Value1
{
public string Value { get; set; }
public string Unit { get; set; }
}
public class Input
{
public int Number { get; set; }
public string AD { get; set; }
public Value1 Value { get; set; }
}
public class Data
{
public List<Input> Inputs { get; set; }
}
public class Root
{
public Header Header { get; set; }
public Data Data { get; set; }
public string Status { get; set; }
public int Statuscode { get; set; }
}
谢谢,我希望你们都有美好的一天。
解决方法
反序列化根对象并跟踪值:
Root news = JsonConvert.DeserializeObject<Root>(json);
Ausgabe.Text = news.Data.Inputs[0].Value.Value;
,
您应该将 json 反序列化为 Root
类:
var root = JsonConvert.DeserializeObject<Root>(json);
根对象反序列化后,您可以选择所需的任何值。例如:
var values = root.Data.Inputs.Select(i => i.Value.Value); // string sequence
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。