Visual Studio 团队服务:使用 RestSharp 和 JSON.NET 获取所有工作项

Visual Studio Team Services: Get all workitems using RestSharp and JSON.NET

我正在尝试从 Visual Studio 团队服务(Visual Studio 在线)获取所有工作项。我已经能够从我的应用程序中创建它们,但在查找所有这些时遇到问题。我一直在尝试使用 wiql,但似乎无法正常工作。感谢任何帮助或提示。

我的代码:

  var Client = new RestClient("https://myvso.visualstudio.com/DefaultCollection/_apis/wit/wiql?api-version=1.0");
        Client.Authenticator = new HttpBasicAuthenticator(username, password);

        IRestRequest request = new RestRequest(Method.POST);
        request.AddHeader("Content-Type", "application/json");
        request.RequestFormat = DataFormat.Json;


        var query = JsonConvert.SerializeObject(new QueryModel() {query = "Select [System.Id] From WorkItems" });

        request.AddJsonBody(query);
        var response = Client.Execute(request);

我不断收到的错误是:

"{\"count\":1,\"value\":{\"Message\":\"Error converting value \\"{\\"query\\":\\"Select [System.Id], From WorkItems\\"}\\" to type 'Microsoft.TeamFoundation.WorkItemTracking.Web.Models.Wiql'. Path '', line 1, position 52.\r\n\"}}"

有人可以告诉我我的查询有什么问题吗?

尝试以下操作:

删除:

var query = JsonConvert.SerializeObject(new QueryModel() {query = "Select [System.Id] From WorkItems" });

更新:

request.AddJsonBody(new {query = "Select [System.Id] From WorkItems" });