2

我正在尝试获取给定 Rally 订阅的可用工作区列表,但查询中似乎没有返回实际工作区。

这是我到目前为止所拥有的:

        RallyRestApi restApi = new RallyRestApi("username", "password");
        List<string> list = new List<string>();

        Request request = new Request("Subscriptions");
        request.Fetch = new List<string>(){
            "Name",
            "SubscriptionID",
            "Workspaces"
        };

        QueryResult queryResult = restApi.Query(request);

        foreach (var result in queryResult.Results)
        {
            var workspaces = result["Workspaces"];
        }

我似乎无法从 QueryResult 中挑出工作区引用或名称。我错过了额外的步骤/查询吗?

4

1 回答 1

1

出于性能原因,v2.0 删除了在同一响应中返回子集合的能力。现在获取集合将返回一个对象,其中包含计数和从中获取集合数据的 url。

示例:/subscription/12345/workspaces

最近发布的 .NET Rest Toolkit 2.0 版本支持 WSAPI v2.0 和集合查询。

RallyRestApi restApi = new RallyRestApi("username", "password");

//get the current subscription
DynamicJsonObject sub = restApi.getSubscription("Workspaces");

//query the Workspaces collection
QueryResult queryResult = restApi.Query(sub["Workspaces"]); 

foreach (var result in queryResult.Results)
{
    var workspaceRef = result["_ref"];
    var workspaceName = result["Name"];
}
于 2013-07-20T13:37:50.800 回答