控制通过属性反序列化Json属性?

时间:2015-06-03 15:40:08

标签: c# json.net deserialization

我的json返回类似于:

{
  "access_token" : "....",
  "token_type" : "....",
  "expires_in" : "...."
}

我有一个类,我想将其反序列化,但字段是:

public string AccessToken { get; set; }
public string TokenType { get; set; }
public int ExpiresIn { get; set; }

我尝试了3个属性的DataMember(Name =“access_token”)等,但是每当我尝试绑定它时,它都会失败(int为0,字符串为null)。我能够让它发挥作用的唯一方法就是......罗嗦:

var test = JObject.Parse(result);
var test2 = new AuthorizeToken() {
  AccessToken = test["access_token"].ToString(),
  ExpiresIn = Convert.ToInt32(test["expires_in"]),
  TokenType = test["token_type"].ToString()
};

当我这样做时,test2被适当填充,但我更喜欢做某种类型的

Deserialize<AuthorizeToken>(result); 

使用Json.NET

0 个答案:

没有答案