c# – VS 2015复制以输出项目引用的GAC引用,而不管本地设置为复制

我为这个行为提出了 connect issue.

VS 2015复制以输出项目引用的GAC引用,而不管本地设置为复制.
VS 2010不会用相同的解决方案项目,尊重当地财产的复制.
目前我发现的唯一解决方法是在Project A中添加对Microsoft.Web.Services3.dll的直接引用,并将其设置为copy local = false.

复制步骤:

Project A
|__ Project B (Project Reference,copy local = true)
     |__Microsoft.Web.Services3.dll (GAC,copy local = false)

实际:

Microsoft.Web.Services3.dll正被复制到Project A的输出目录.

预期:

Microsoft.Web.Services3.dll未被复制到项目A的输出目录.

任何想法为什么会发生这种情况? MSDN documentation明确指出,GAC的依赖关系不应该被复制到输出中,VS 2010也是这样认为的.

解决方法

当我从VS2013移动到VS2015时,我遇到了几个第三方GAC的程序集的类似问题.我的解决方案是进入每个.csproj文件添加以下内容
<PropertyGroup>
    <DoNotCopyLocalIfInGac>true</DoNotCopyLocalIfInGac>
</PropertyGroup>

相关文章

在项目中使用SharpZipLib压缩文件夹的时候,遇到如果目录较深,则压缩包中的文件夹同样比较深的问题。比...
项目需要,几十万张照片需要计算出每个照片的特征值(调用C++编写的DLL)。 业务流程:选择照片...
var array = new byte[4]; var i = Encoding.UTF8.GetBytes(100.ToString(&quot;x2&quot;));//...
其实很简单,因为Combox的Item是一个K/V的object,那么就可以把它的items转换成IEnumerable&lt;Dic...
把.net4.6安装包打包进安装程序。 关键脚本如下: 头部引用字符串对比库 !include &quot;WordFunc....
项目需求(Winform)可以批量打印某个模板,经过百度和摸索,使用iTextSharp+ZXing.NetʿreeSp...