TFS上的编译错误-未引用程序集中定义

时间:2019-03-25 05:44:01

标签: c# tfs compiler-errors .net-standard

我们有一个c#解决方案(框架4.5.2),在桌面上开发,在TFS服务器2015上编译。我们向其中添加了一个新的DLL项目(框架4.6.1),该项目使用Microsoft Code Analysis包。该解决方案正在桌面上毫无问题地进行编译(VS 2017)。我们将更改提交到TFS,在其中删除了一些编译器错误,例如:

  

类型'ValueType'在未引用的程序集中定义。   您必须添加对程序集“ netstandard,Version = 2.0.0.0,   文化=中性,PublicKeyToken = cc7b13ffcd2ddd51'。

该项目根据单词“ netstandard”包含多个参考:

<Reference Include="Microsoft.CodeAnalysis, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
  <HintPath>..\packages\Microsoft.CodeAnalysis.Common.2.10.0\lib\netstandard1.3\Microsoft.CodeAnalysis.dll</HintPath>
</Reference>


<Reference Include="System.Collections.Immutable, Version=1.2.3.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
  <HintPath>..\packages\System.Collections.Immutable.1.5.0\lib\netstandard2.0\System.Collections.Immutable.dll</HintPath>
</Reference>

当我添加引用时:

<Reference Include="netstandard, Version=2.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51" />

仍然报告编译错误。在桌面上,该解决方案仍然可以编译而不会发出警告或错误。下一步怎么办?

PS:不幸的是,解决方案中混合使用了框架版本。首选4.5.2,但是没有机会将MS Code Analysis软件包添加到具有此版本的dll项目中。 :(多个框架版本是问题的根本原因吗?

0 个答案:

没有答案