Visual Studio 2015 包扩展,未复制引用的 dll

Visual Studio 2015 Package Extension,referenced dll not copied

你好,我在我的 vs2015 扩展中使用了 roslyn Microsoft.CodeAnalysis.Csharp dll,我将我的 visual studio 扩展项目升级到 visual studio 2013 到 2015。但是只有我的 roslyn dll 没有被复制,当我想要安装 extension.My 目标框架仍然相同 (.net 4.5.0)。我检查 nuget.org 到新的 roslyn dll,支持的版本看起来 same.I 尝试升级我的 roslyn 版本但结果是一样的。 如果我手动复制到扩展路径 roslyn dll,那时候我的扩展正在工作。 对此有什么想法吗?

在 visual studio 2015 vsix 项目中一些 dll 像 Microsoft.CodeAnalysis.dll 没有复制到扩展 path.You 可以添加

<ForceIncludeInVSIX>true</ForceIncludeInVSIX>

在您的参考标签内添加标签,例如。

<Reference Include="Microsoft.CodeAnalysis.dll, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
      <ForceIncludeInVSIX>true</ForceIncludeInVSIX>
</Reference>

有关详细信息,您可以查看此站点... http://comealive.io/Forcing-DLLs-To-Vsix/

Roslyn 包含在 Visual Studio 中;您不应在 VSIX 中包含 Roslyn DLL。

如果这样做,加载不同的 DLL 副本可能会出现很多奇怪的错误。