【问题标题】:VSTS Extension Data Storage on Project Scope Level项目范围级别的 VSTS 扩展数据存储
【发布时间】:2017-10-03 21:20:39
【问题描述】:

我已经成功地使用我的工作项页面扩展创建了一个设置页面,它可以自动生成工作项上的 dev、doc、qa 和测试件任务。设置页面用于修改可以为其生成任务的分支(“6.14”、“6.15”等)。使用数据存储客户端服务 API,该扩展当前保存项目集合级别的设置。我想要做的是让扩展程序的设置对于安装扩展程序的每个项目都是唯一的。

问题 1:可以在每个项目的基础上安装扩展吗?还是必须将其安装在项目集合范围内,以便集合内创建的所有项目都具有扩展名?

问题 2:是否可以通过数据存储将扩展的设置保存在项目范围内,而不仅仅是项目集合或用户范围?我能想到解决这个问题的唯一方法是获取项目中的所有用户,然后为每个用户设置文档,其中包含应保存的数据?如果用户是多个项目的一部分怎么办?这似乎不是一个合理的选择。

注意:我正在考虑并意识到更好的解决方案是为每个项目创建一个文档,因此 id 为 1 的文档将包含特定项目的分支,id 为 2 的文档将有不同项目的分支。这看起来合理吗?

【问题讨论】:

    标签: azure-devops azure-devops-extensions azure-devops-rest-api


    【解决方案1】:
    1. 不,扩展不能安装到团队项目,它必须安装在项目集合范围内。
    2. 不,数据存储的范围可以是项目集合或用户,不能是项目范围。

    更多信息,可以参考Data storage

    【讨论】:

      【解决方案2】:

      @starain-MSFT 对您的前两个问题给出了正确答案。

      回答注释中的问题:是的,这听起来很合理。我正是这样做的。我为每个项目创建了一个文档,其中 id 是您可以从项目名称中派生的东西。这简化了从扩展中访问文档的过程,因为项目名称很容易通过 VSS api 确定。 不幸的是,如果您重命名项目,这会中断。但无论如何,我建议不要这样做。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-01-24
        • 1970-01-01
        • 1970-01-01
        • 2020-03-11
        • 2022-12-10
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多