[英]How can I deserialize JSON containing delimited JSON?
我有一个问题,将Json字符串反序列化为对象。
这是我从网络服务收到的json示例:
{
"GetDataResult":
"{
\"id\":1234,
\"cityname\":\"New York\",
\"temperature\":300,
}"
}
我有一个类似CityData的类
[JsonObject("GetDataResult")]
public class CityData
{
[JsonProperty("id")]
public int Id { get; set; }
[JsonProperty("cityname")]
public string CityName { get; set; }
[JsonProperty("temperature")]
public int Temperature { get; set; }
}
我尝试通过调用DeserializeObject方法反序列化json
var cityData = JsonConvert.DeserializeObject<CityData>(response);
但根元素似乎有问题......
你们知道我怎么解决它,所以我收到一个填充了数据的CityData对象?
json响应包含一个对象,该对象本身包含表示数据结果的json字符串。
您需要反序列化两次,一次用于响应,另一次用于数据结果。
var response = JsonConvert.DeserializeObject<JObject>(responseStr);
var dataResult = (string)response["GetDataResult"];
var cityData = JsonConvert.DeserializeObject<CityData>(dataResult);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.