繁体   English   中英

包含“唯一值”的JSON的反序列化-RestSharp

[英]Deserialization of JSON containing “Unique Values” - RestSharp

我看到了反序列化JSON的示例,但是我的JSON具有唯一值

{
  "-JxsJFiGBqQz1KQmmR0i" : {
    "bizcardData" : {
      "company" : "Tesla",
      "designation" : "Developer",
      "email" : "phani@tesla.com",
      "name" : "Phani",
      "phone" : "5135921241"
    },
    "transData" : {
      "date" : "15-08-29",
      "location" : "39.1395996,-84.5295417",
      "tag" : "sender",
      "time" : "03:17:00"
    }
  },
  "-JxsJKnJIVTFQWE1aSOr" : {
    "bizcardData" : {
      "company" : "Spotify",
      "designation" : "Designer",
      "email" : "komarapa@spotify.com",
      "name" : "Phani Komaravolu",
      "phone" : "5135921241"
    },
    "transData" : {
      "date" : "15-08-29",
      "location" : "39.1395996,-84.5295417",
      "tag" : "sender",
      "time" : "03:17:21"
    }
  }
}

我正在使用一个称为Transactions,其中包含bizCardDatatransData的 List>。 我不需要存储唯一值。 只是两个值列表。

请分享有关如何使用JSON使用唯一值反序列化JSON的代码,并在可能的情况下阐明如何最好地构造类以存储值。

谢谢!

RestSharp支持将具有任意名称的JSON对象反序列化为.Net字典。 给定的类:

public class BizcardData
{
    public string company { get; set; }
    public string designation { get; set; }
    public string email { get; set; }
    public string name { get; set; }
    public string phone { get; set; }
}

public class TransData
{
    public string date { get; set; }
    public string location { get; set; }
    public string tag { get; set; }
    public string time { get; set; }
}

public class Transactions
{
    public BizcardData bizcardData { get; set; }
    public TransData transData { get; set; }
}

您可以像这样反序列化和序列化JSON:

        var resultList = SimpleJson.DeserializeObject<Dictionary<string, Transactions>>(json);

或者,

        RestSharp.RestResponse response = new RestSharp.RestResponse();
        response.Content = json;

        JsonDeserializer serializer = new JsonDeserializer();

        var resultList = serializer.Deserialize<Dictionary<string, Transactions>>(response);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM