RestSharp返回一个空数组到json反序列化

时间:2014-04-05 22:24:26

标签: c# asp.net json json.net restsharp

当我在api上签署RestSharp请求时,我遇到了问题。我得到的内容响应是一个空数组。当我尝试将值发送到我的模型时,有什么想法为什么这会空? (当我运行一个get用户时似乎运行正常,我认为它可能与使用IEnumerable有关)

这是我的RestSharp请求:

var request = new RestRequest("/problems/", Method.GET);
request.AddHeader("id-header", id);
request.RequestFormat = DataFormat.Json;

var response = client.Execute(request) as RestResponse;

List<MyModel> d = JsonConvert.DeserializeObject<List<MyModel>>(response.Content);

return View(d);

以下是我的API中的方法:

[ResponseType(typeof(ProblemModel))]
public IQueryable<ProblemModel> GetProblems()
{
    var problems = User.Companies
                       .SelectMany(c => c.Projects)
                       .SelectMany(p => p.Problems)
                       .AsQueryable<Problem>()
                       .Select(factory.AsProblemModel);

    return problems;
}

我的模型RestSharp正在使用:

public class MyModel
{
    public int Id { get; set; }
    public string Title { get; set; }
    public string Description { get; set; }
    public Nullable<int> AssignedToId { get; set; }
    public int ProjectId { get; set; }
}

1 个答案:

答案 0 :(得分:1)

我不了解restSharp,但GetDefects()返回IEnumerable而不是IQueryable看起来更自然