如何向 ExternalLink 类型的链接页添加其他列

How to Add additional columns to links page to ExternalLink types

提问人:galsi 提问时间:1/15/2023 最后编辑:galsi 更新时间:1/18/2023 访问量:220

问:

如何在Azure DevOps工作项的“链接”页上向ExternalLink添加列?

答案:不可能,见下面的答案

拉取请求与代码评审请求不同,它不是一个工作项 类型,我们无法从导出的流程模板中看到它。所以,我没有 认为我们可以像常见工作项类型一样自定义列。– 安迪·李(Andy Li)-MSFT

在浏览以下链接 link1 link2 并尝试此处讨论的解决方法后

我无法向 externallink 类型的链接添加更多列 我添加了以下代码,如上所述:

         <Page Label="Links" LayoutMode="FirstColumnWide">
          <Section>
            <Group Label="links">
              <Control Type="LinksControl" Name="links">
                <LinksControlOptions>
                  <LinkFilters>
                    <ExternalLinkFilter Type="Build" />
                    <ExternalLinkFilter Type="Integrated in build" />
                    <ExternalLinkFilter Type="Pull Request" />
                    <ExternalLinkFilter Type="Branch" />
                    <ExternalLinkFilter Type="Fixed in Commit" />
                    <ExternalLinkFilter Type="Fixed in Changeset" />
                    <ExternalLinkFilter Type="Source Code File" />
                    <ExternalLinkFilter Type="Found in build" />
                    <ExternalLinkFilter Type="GitHub Pull Request" />
                    <ExternalLinkFilter Type="GitHub Commit" />
                  </LinkFilters>
                  <Columns>
                    <Column Name="System.State" />
                    <Column Name="System.ChangedDate" />
                    <Column Name="System.PullRequest.IsFork" />
                  </Columns>
                </LinksControlOptions>
              </Control>
            </Group>
          </Section>
        </Page>

但结果仍然只显示原始列。enter image description here

azure-devops tfs-workitem

评论


答:

0赞 Andy Li-MSFT 1/16/2023 #1

问题是您添加的字段/列 () 不是有效的工作项/列。该解决方法仅适用于工作项类型,因为列依赖于工作项字段。<Column Name="System.PullRequest.IsFork" />

需要在此处添加有效的工作项字段/列。我们可以通过调用获取工作项 REST API 来获取所有可用的工作项字段,并在特定工作项的 URL 中添加参数。$expand=Fields

GET https://{instance}/{collection}/{project}/_apis/wit/workitems/{id}?$expand=Fields&api-version=4.1

例如,以下屏幕截图显示了我的工作项的所有可用字段。(这取决于您如何定义字段,如果您定义了自定义字段,您也可以从响应正文中看到它。Task

enter image description here

之后,我们可以添加列(例如在此示例中)System.CreatedByMicrosoft.VSTS.Common.Priority

enter image description here

然后检查工作项中的行为:Taskenter image description here

请注意,,不是工作项类型。我们无法通过调用拉取请求 REST API 来获取有效的工作项字段。在这种情况下,我认为我们无法像常见工作项类型那样自定义列。Pull Requests

评论

0赞 galsi 1/16/2023
获取拉取请求 json 时 - json 中没有“字段”。拉取请求不是工作项类型吗?
0赞 Andy Li-MSFT 1/17/2023
@galsi拉取请求是一种特殊的工作项类型,但拉取请求 (PR) 是一种在 Azure Repos 上的 Git 存储库中更改、查看和合并代码的方法。它与其他常见的工作项类型不同。有关详细信息,请参阅跟踪使用不同工作项类型拉取请求的工作。
0赞 galsi 1/17/2023
查看文档后,我没有看到任何从拉取请求中获取字段的选项。也许你有任何例子的链接。?
1赞 Andy Li-MSFT 1/18/2023
@galsi 好吧,再次检查,不像,它不是工作项类型,我们无法从导出的过程模板中看到它。因此,我认为我们无法像常见工作项类型那样自定义列。Pull RequestCode Review Request