JSON数据是这样的
[
{
"market_id": "21",
"coin": "DarkCoin",
"code": "DRK",
"exchange": "BTC",
"last_price": "0.01777975",
"yesterday_price": "0.01770278",
"change": "+0.43",
"24hhigh": "0.01800280",
"24hlow": "0.01752015",
"24hvol": "404.202",
"top_bid": "0.01777975",
"top_ask": "0.01790000"
}
]
注意这三个属性24high, 24hlow和24hvol你怎么能给他们上课呢。顺便说一下,我需要所有这些属性,而不仅仅是我提到的这三个属性
您应该使用JSON。NET或类似的库,提供一些更高级的反序列化选项。与JSON。NET所需要的就是添加JsonProperty属性并指定它的自定义名称,该名称出现在结果JSON中。下面是示例:
public class MyClass
{
[JsonProperty(PropertyName = "24hhigh")]
public string Highest { get; set; }
...
现在反序列化:
string jsonData = ...
MyClass deserializedMyClass = JsonConvert.DeserializeObject<MyClass>(jsonData);
对于。net Core 3.0及更高版本,您现在可以使用System.Text.Json
命名空间。如果你使用这个:
public class MyClass
{
...
[JsonPropertyName("24hhigh")]
public string twentyFourhhigh { get; set; }
...
}
您可以使用JsonPropertyName
Attribute