visual-studio - Visual Studio 2015 - 无法从工作项描述字段打开指向工作项的链接

标签 visual-studio tfs-workitem

上下文

如果您复制 TFS 工作项,则副本的历史记录选项卡会出现一个条目,上面写着“从功能 364057 复制”以及指向“功能 364057”的超链接。点击链接将在 Visual Studio 中打开工作项(如预期的那样!)。

往后看,HTML如下:Copied from <a href="x-mvwit:workitem/364057">Feature 364057</a>.

如果您有兴趣,可以自己尝试使用此 C# 代码读取工作项修订的更改字段以获得上述 HTML 代码:

private static void PrintRevisions(WorkItem workItem)
{
    foreach (Revision revision in workItem.Revisions)
    {
        Console.WriteLine($"Fields of Revision {revision.Index} | TagLine = {revision.GetTagLine()}");
        PrintFields(revision.Fields);
    }
}

private static void PrintFields(FieldCollection fields)
{
    foreach (Field field in fields)
    {
        Console.WriteLine($"{field.Name} | {field.ReferenceName} = {field.Value}");
    }
}

问题

如果我在工作项的描述选项卡中插入完全相同的 HTML,当我想访问该链接时会收到以下消息: Unsafe link


问题 1: 有谁知道为什么可以从“历史记录”选项卡而不是“描述”选项卡打开这种类型的链接?也许有与消息相关的 Visual Studio 设置?


问题 2:是否有另一种方法可以在“描述”选项卡中创建指向其他工作项的链接,从而在 Visual Studio 中(而不是在 Internet 浏览器中)打开工作项?

请不要引用创建链接/关系的功能,例如通过“所有链接”选项卡。我明确希望在描述字段中打开指向其他工作项的链接。

最佳答案

@问题 1:我发现了以下内容:Microsoft 声明在“新工作项跟踪体验”中,您可以通过键入“#”链接讨论选项卡中的工作项(请参阅 New work item tracking experience)。我用这个方法链接了一个项目,然后分析了我通过 REST API 请求的 JSON 对象。我想我会得到与复制相同的链接结构:<a href="x-mvwit:workitem/364057"> 但我得到了:

<a href=\"https://{MyServer}/tfs/_permalink/_workitems/edit/1234?collectionId=1234&amp;projectId=1234\" data-vss-mention=\"version:1.0\">Feature 1234: _Template Feature</a>&nbsp;<br>

也许您可以提供第二个结构的链接(对我有用),但通常它似乎只用于讨论选项卡。

关于visual-studio - Visual Studio 2015 - 无法从工作项描述字段打开指向工作项的链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48504045/

相关文章:

visual-studio - VS.NET - 多个查找所有引用结果窗口?

.net - 为什么 Visual Studio 在 Azure DevOps checkin 时排除 BIN 和 OBJ 文件夹

c# - WPF C# 实现调整 handle 大小

visual-studio-2010 - 如何使用Visual Studio加载项打开“TFS变更集详细信息”对话框 View ?

wpf - 如何退出 Visual Studio 2012 中的编辑样式

c# - 在 Visual Studio 2013 中为 .NET 3.5 调试添加调试符号

c# - 如何获取分层格式的 TFS 待办事项列表?

tfs - 列出 TFS 中准备接受的工作项

azure-devops - 无法将工作项分配给 Azure DevOps 中的发布