使用拉力赛';是否使用s.NETAPI回调所有工作区的列表?
登录后我做的第一件事是获取所有工作区名称的列表;更新到最新的DLL后,我当前的方法不起作用。什么需要改变?代码如下: DynamicJsonObject sub=loginRestApi.GetSubscription(“工作空间”)使用拉力赛';是否使用s.NETAPI回调所有工作区的列表?,.net,api,rally,.net,Api,Rally,登录后我做的第一件事是获取所有工作区名称的列表;更新到最新的DLL后,我当前的方法不起作用。什么需要改变?代码如下: DynamicJsonObject sub=loginRestApi.GetSubscription(“工作空间”) var workspaceNames=sub[“工作空间”]; 迭代。清除(); projects.Clear(); tVFROPGenerator.Nodes.Clear(); tVlistDomainStatus.Nodes.Clear(); cbProjec
var workspaceNames=sub[“工作空间”];
迭代。清除();
projects.Clear();
tVFROPGenerator.Nodes.Clear();
tVlistDomainStatus.Nodes.Clear();
cbProject.Items.Clear();
cbProject.Items.Add(所有_项目);
int indexWorkspace=0;
foreach(子[“工作空间”]中的var workspaceRef)请尝试以下代码:
using System;
using System.Collections.Generic;
using System.Collections;
using System.Linq;
using System.Text;
using Rally.RestApi;
using Rally.RestApi.Response;
namespace Rest_v2._0_test
{
class Program
{
static void Main(string[] args)
{
//Initialize the REST API
RallyRestApi restApi;
restApi = new RallyRestApi("user@co.com", "secret", "https://rally1.rallydev.com", "v2.0");
//get the current subscription
DynamicJsonObject sub = restApi.GetSubscription("Workspaces");
Request wRequest = new Request(sub["Workspaces"]);
//query the Workspaces collection
QueryResult queryResult = restApi.Query(wRequest);
foreach (var result in queryResult.Results)
{
var workspaceReference = result["_ref"];
var workspaceName = result["Name"];
Console.WriteLine( workspaceName + " " + workspaceReference);
}
}
}
}
更改的原因是,最新的库默认使用WSAPI的v2.0,集合(如工作区)不再在单个请求中返回。下面答案中的代码应该满足您的需要。
using System;
using System.Collections.Generic;
using System.Collections;
using System.Linq;
using System.Text;
using Rally.RestApi;
using Rally.RestApi.Response;
namespace Rest_v2._0_test
{
class Program
{
static void Main(string[] args)
{
//Initialize the REST API
RallyRestApi restApi;
restApi = new RallyRestApi("user@co.com", "secret", "https://rally1.rallydev.com", "v2.0");
//get the current subscription
DynamicJsonObject sub = restApi.GetSubscription("Workspaces");
Request wRequest = new Request(sub["Workspaces"]);
//query the Workspaces collection
QueryResult queryResult = restApi.Query(wRequest);
foreach (var result in queryResult.Results)
{
var workspaceReference = result["_ref"];
var workspaceName = result["Name"];
Console.WriteLine( workspaceName + " " + workspaceReference);
}
}
}
}