【问题标题】:Using TFS API, how can I find the status of code review like "Looks Good", "Needs work"?使用 TFS API,我如何找到代码审查的状态,如“看起来不错”、“需要工作”?
【发布时间】:2018-10-06 01:31:13
【问题描述】:

我已经搜索了讨论并尝试了这个,

Changeset changeSet = _versionControlServer.GetChangeset(Int32.Parse(changesetString));
                            if (changeSet != null)
                            {


                                foreach (var item in changeSet.AssociatedWorkItems)
                                {
                                    WorkItem wk = workItemStore.GetWorkItem(item.Id);

但我在WorkItem 找不到显示“已完成(看起来不错)”的公共财产。

有没有办法通过 API 找到这个?

【问题讨论】:

    标签: tfs tfs-code-review


    【解决方案1】:

    代码审查有两种类型的工作项:代码审查请求 ,代码审查回复

    当您要求审查时,TFS 会创建一个代码审查请求,然后 在幕后为每个人创建一个代码审查响应 你要求审查我的工作。所以如果你标记 Alice、Bob 和 Charlie 在我的审查中,为我创建了四个工作项:一个请求 加上三个响应。

    胶水是一种称为相关链接的东西。家长审核 与孩子的反应有关,反之亦然。这简化了 事情有点,因为一旦你有审查,你可以很容易地 根据 ID 确定响应工作项。

    您尝试获取工作项的代码是代码审查请求。您要在 Code Review Response 中找到一个名为 Closed Status 的文件:

    审查者在关闭代码审查时选择的状态 要求。该号码存储在系统中并写入数据 仓库如下:

    • 0 - 未审核
    • 1 - 看起来不错
    • 2 - 带评论
    • 3- 需要工作
    • 4 - 拒绝
    • 5 - 已移除

    参考名称=Microsoft.VSTS.CodeReview.ClosedStatus

    Source Link

    您可以将 WIQL 与 TFS API 结合使用来获取您需要的内容。详细步骤请参考本教程:Getting Code Review Statistics Programmatically from TFS

    更多使用 TFS API 访问代码审查的示例如下所示:Using TFS API, how can I find the comments which were made on a Code Review?

    【讨论】:

      【解决方案2】:

      对于任何需要它的人,

       foreach (WorkItem wr in workitems)
                  {
      
                  string shelvsetValue = null;
                  string codeState = null;
                  string userName = wr.CreatedBy.ToString();
                  foreach(Field f in wr.Fields)
                  {
                      if(f.Name.Equals("Associated Context"))
                      {
                          shelvsetValue = f.Value.ToString();
                      }
                      if (f.Name.Equals("Closed Status Code"))
                      {
                          if(f.Value!=null)
                          { 
                              codeState = f.Value.ToString();
                          }
                      }
                  }
      

      【讨论】:

        猜你喜欢
        • 2013-04-10
        • 2017-10-19
        • 1970-01-01
        • 2018-08-25
        • 2019-08-29
        • 1970-01-01
        • 1970-01-01
        • 2012-06-07
        • 2016-11-06
        相关资源
        最近更新 更多