【问题标题】:Visual Studio Extensions - support multiple versions of VSVisual Studio Extensions - 支持多个版本的 VS
【发布时间】:2014-12-11 09:38:57
【问题描述】:

我一直在写一个扩展(Editor Classifier 项目,加入了一些其他功能。它在 VS2013 上运行良好,但我需要支持其他版本 VS2012 和 VS2015(当它不在预览版中时)。

当我在vsixmanifest 中添加支持的版本时,我面临的问题是,ITestContainerDiscovererIClassificationTypeRegistryService 的导出失败抱怨

ContractName="Microsoft.VisualStudio.Text.Classification.IClassificationTypeRegistryService")' is not assignable to type 'Microsoft.VisualStudio.Text.Classification.IClassificationTypeRegistryService'

我猜这是因为我引用了无效的 SDK 版本。我总是可以编写不同的版本,但有没有办法在不同版本的 Visual Studio 之间共享扩展?

【问题讨论】:

  • 你有没有试过引用最低版本...
  • 看看是否有帮助:如何创建与 VS 2010、2012 和 2013 兼容的 Visual Studio 可扩展性项目blogs.clariusconsulting.net/kzu/…
  • @ErikEJ - 感谢您的提示,除了我的 TestAdapters 之外,它似乎有效。需要再挖一点。 @Carlos - 该博客更侧重于跨版本无缝升级项目,而我需要生成跨版本工作的二进制文件。

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


【解决方案1】:

@ErikEJ 的提示对我有用。我必须将扩展项目移植到 VS2012 并使用设置为 [11.0,12.0]target 构建它,这确保了我生成的 VSIX 对 VS2012 和 VS2013 都有效。也没有错误!

【讨论】:

    猜你喜欢
    • 2019-01-04
    • 2020-06-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-09
    • 2018-10-20
    • 2015-01-22
    相关资源
    最近更新 更多