如何通过集会c#api查询发布/迭代?

时间:2013-06-14 18:41:31

标签: rally

我正在尝试查询Release和Iteration,因此我可以使用这些不同的值填写下拉列表。不过,我不太清楚如何做到这一点。如果能够执行此操作,通过查询返回的对象的成员是什么? (Name,FormattedID,CreationDate等)。我们只是创建一个“Release”和“Iteration”类型的新请求吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

这是一个基于项目引用查询版本的代码。如果此项目不在运行代码的用户的默认工作空间中,我们需要对工作空间引用进行硬编码或从项目中获取它。

class Program
{

    static void Main(string[] args)

    {
        RallyRestApi restApi;
        restApi = new RallyRestApi("user@co.com", "TopSecret1984", "https://rally1.rallydev.com", "1.40");
        var projectRef = "/project/22222222"; //use your project OID
        DynamicJsonObject itemWorkspace = restApi.GetByReference(projectRef, "Workspace");
        var workspaceRef = itemWorkspace["Workspace"]["_ref"];

        Dictionary<string, string> result = new Dictionary<string, string>();
       try
        {

            Request request = new Request("Release");
            request.ProjectScopeDown = false;
            request.ProjectScopeUp = false;
            request.Workspace = workspaceRef;
            request.Fetch = new List<string>()
             {
                 "Name"

             };
          // request.Query = new Query("Project.ObjectID", Query.Operator.Equals, "22222222"); //also works
            request.Query = new Query("Project", Query.Operator.Equals, projectRef);
            QueryResult queryResult = restApi.Query(request);
            foreach (var r in queryResult.Results)
            {
                Console.WriteLine("Name: " + r["Name"]);
            }

       }
        catch
        {
            Console.WriteLine("problem!");
        }
    }

}
}