RestSharp:使用具有IEnumerable属性的T执行<t>()

时间:2017-08-22 22:45:22

标签: c# restsharp

我注意到使用RestSharp:Execute<T>(),当T如下

public class Result
{
    public List<DBData> Data { get; set; }
    public int Total { get; set; }
    public bool Success { get; set; }           
}

它将Execute<Result>()中的JSON正确反序列化为Result对象, 但是当类具有如下所示的IEnumerable属性时

public class Result 
{
    public IEnumerable<DBData> Data { get; set; }
    public int Total { get; set; }
    public bool Success { get; set; }
}

Execute<Result>()未填充(反序列化)到对象Result。

我怀疑是因为IEnumerable<T>只读而且Restsharp无法反序列化数据?是这样的吗?

1 个答案:

答案 0 :(得分:1)

因为RestSharp无法从IEnumerable推断属性的类型。扩展现有的SimpleJson序列化程序以使用更强大的序列化程序,如Json.Net