2012-05-25 47 views
0

我构建了一个通过格式化ID查询API的自定义集成。如果存在不同类型的重复ID(US181 & DE181),我经常只收到来自系统的单个响应,这似乎是错误的工件。我想使用格式化ID(US181或181)搜索任务,故事和缺陷,并收到相应的结果。在格式化ID上查询时出现意外的结果

C#代码如下:

public static string FindArtifactByFormattedId(string formattedId) 
    { 
     string artifactRef = null; 

     Request req = new Request("Artifact"); 
     req.Query = new Query("FormattedId", Query.Operator.Equals, formattedId.Remove(0,2)); 
     req.Workspace = rallyWorkspace; 
     QueryResult queryResult = restApi.Query(req); 
     if (queryResult.TotalResultCount > 0) 
     { 
      foreach(DynamicJsonObject djo in queryResult.Results) 
      { 
       if (djo["FormattedID"] == formattedId) 
       { 
        artifactRef = djo["_ref"]; 
        break; 
       } 
      } 
     } 

     return artifactRef; 
    } 
+0

您正在使用的.NET REST dll的版本是什么?测试您的示例代码我收到了版本1.05和更高版本的预期结果。 – 2012-05-28 18:34:55

回答

0

这似乎是我们的一个WSAPI缺陷。我已经在内部提交了这个内容,以便它可以被优先化,直到那时您可以随时查询每个单独的工件以通过FormattedID查找特定的工件。