1

RestSharpを使用してビジネスオブジェクトに変換しようとしている次のJSONを取得します

  {
  "valid":true,
  "data":[
    {
       "dealerId":"4373",
       "branchId":"4373",
    }
  ]
  }

私はに変換したい:

public class Dealer
{
    public string dealerId ;
    public string branchId;
   }

しかし、JSONは問題ありませんが、これは失敗します。

        var client = new RestClient("http://www.????.com.au");
        var request = new RestRequest(string.Format("service/autocomplete/dealer/{0}/{1}.json", suburb.PostCode, suburb.City.Trim().Replace(" ", "%20")), Method.GET);
        var response2 = client.Execute<Dealer>(request);
        return response2.Data;
4

1 に答える 1

2

ビジネスオブジェクトが、返される応答JSONと一致しません。応答をシリアル化する場合、C#オブジェクトは次のようになります。

public class DealerResponse
{
    public bool valid { get;set; }
    List<Dealer> data { get;set; }
}

public class Dealer
{
    public string dealerId;         
    public string branchId;   
}

このコードはテストしていませんが、「データ」の情報にのみ関心がある場合でも、正しくシリアル化するには、応答C#オブジェクトがJSON応答全体を表す必要があります。

お役に立てば幸いです。

于 2012-09-05T03:26:35.813 に答える