RestSharp104.1反序化用法

RestSharp中的json反序列化类为JsonDeserializer,其用法与JSON.NET有点不同。

(1) 在反序列化前要设置RootElement,否则无法反序列化成功。

(2) 反序列化后的对象属性如果有数组成员变量,必须用List<string>,而不能用string[],否则会提示没有定义无参数的构造函数。

 

以下例子用于反序列化一个json字符串。

JSON字符串为:{"error":{"code":400,"message":"Unable to complete  operation.","details":["Invalid URL"]}}

 

.NET代码如下:

 

Public class JsonDemo

{

public void Test()

{

var myresponse = new RestResponse();
myresponse.Content = "{\"error\":{\"code\":400,\"message\":\"Unable to complete  operation.\",\"details\":[\"Invalid URL\"]}}";

       

JsonDeserializer myJsonDeserializer = new JsonDeserializer();
myJsonDeserializer.RootElement = "error";       

List<errorObject> myErrors = myJsonDeserializer.Deserialize<List<errorObject>>(myresponse);

}

}

 

public class errorObject
{
    private int _code;
    public int code
    {
        get { return _code; }
        set { _code = value; }
    }

    private string _message;
    public string message
    {
        get { return _message; }
        set { _message = value; }
    }

    private List<string> _details;
    public List<string> details
    {
        get { return _details; }
        set { _details = value; }
    }

    public errorObject()
    { }

}

转载于:https://www.cnblogs.com/janehlp/archive/2012/11/07/2759012.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值