【问题标题】:Visual Studio private gallery auto update extensionsVisual Studio 私有库自动更新扩展
【发布时间】:2016-10-20 13:52:25
【问题描述】:

所以我在 Visual Studio 中创建了一个私有扩展库并发布了一个扩展。

我想创建另一个扩展程序,它会在有可用更新时自动更新第一个扩展程序。 我找到了一个示例源代码 (https://github.com/madskristensen/ExtensionUpdater),用于使用 ExtensionRepositoryService 自动查找和更新扩展,它提供了查询在线 Visual Studio 扩展存储库的能力。

ExtensionRepositoryService 是预定义的,并在使用 Package.GetService(Type) 方法返回后连接到 Visual Studio 库,方法如下:

var repository = (IVsExtensionRepository)GetService(typeof(SVsExtensionRepository));

稍后查询存储库是使用以下代码实现的:

var entry = _repository.CreateQuery<GalleryEntry>(false, true, "ExtensionManagerUpdate")
                        .Where(e => e.VsixID == extension.Header.Identifier)
                        .AsEnumerable()
                        .FirstOrDefault();

我的问题是:是否可以使用相同的 API 连接到 私有 VS 库并查询库中提供的扩展程序?

【问题讨论】:

  • VS 2015 自动更新大部分扩展
  • 确实,你不应该让扩展更新其他扩展...
  • 我们的企业开发人员主要使用 vs2010 和 2013,我不能假设他们拥有最新的 VS

标签: c# visual-studio auto-update visual-studio-extensions vspackage


【解决方案1】:

我最终创建了一个实现 IVsExtensionRepository 接口的 CustomGallery 类

该类有一个构造函数,它接收 XML 文件路径并解析 XML 以读取私有画廊原子文件。 我使用 Lync 轻松查询 CustomGallery 对象

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-02-21
    • 2020-12-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-13
    • 1970-01-01
    相关资源
    最近更新 更多