用于反序列化的Newtonsoft.Json自定义根名称

时间:2016-04-19 21:38:57

标签: c# json.net

我有这个定义json格式的类:

public class ResultType
{
    public bool status { get; set; }
    public string message { get; set; }
}

实际的json看起来像这样:

{"result":{"status":true,"message":"Success"}}

如何在将json反序列化为“result”

时覆盖root属性

2 个答案:

答案 0 :(得分:2)

JObject jsonResponse = JObject.Parse(jsonString);
ResultType _Data = Newtonsoft.Json.JsonConvert.DeserializeObject<ResultType>(jsonResponse["result"].ToString());

Console.WriteLine(_Data.status);

小提琴:https://dotnetfiddle.net/gjYS2p

答案 1 :(得分:0)

我有一个集中的反序列化方法,所以我尽量避免使用类型特定的代码。

我使用以下方法来解决问题,可能不像我希望的那样性感,但它有效。

public class ResultType
{
    public ResultDetailType result { get; set; }
}
public class ResultDetailType
{ 
    public bool status { get; set; }
    public string message { get; set; }
}