ServiceStack.Interfaces中System,Version = 4.0.0.0与System,Version = 2.0.5.0之间的冲突

时间:2017-06-20 04:35:33

标签: c# .net servicestack

我正在尝试解决构建警告,但我无法通过这个。我的目标是.Net 4.6.2,但似乎ServiceStack.Interfaces针对较低版本?在详细输出中:

There was a conflict between "System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" and "System, Version=2.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e, Retargetable=Yes".
1>      "System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" was chosen because it was primary and "System, Version=2.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e, Retargetable=Yes" was not.
1>      References which depend on "System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" [C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.2\System.dll].
1>          C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.2\System.dll
1>            Project file item includes which caused reference "C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.2\System.dll".

然后是许多看起来不错的常规集会,然后是冲突:

1>      References which depend on "System, Version=2.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e, Retargetable=Yes" [].
1>          C:\Code\Trunk\packages\ServiceStack.Interfaces.4.5.6\lib\portable-wp80+sl5+net45+win8+wpa81+monotouch+monoandroid+xamarin.ios10\ServiceStack.Interfaces.dll
1>            Project file item includes which caused reference "C:\Code\Trunk\packages\ServiceStack.Interfaces.4.5.6\lib\portable-wp80+sl5+net45+win8+wpa81+monotouch+monoandroid+xamarin.ios10\ServiceStack.Interfaces.dll".
1>              ServiceStack.Common, Version=4.5.6.0, Culture=neutral, processorArchitecture=MSIL
1>              ServiceStack.Interfaces, Version=4.0.0.0, Culture=neutral, PublicKeyToken=e06fbc6124f57c43, processorArchitecture=MSIL
1>              ServiceStack.Redis, Version=4.5.6.0, Culture=neutral, processorArchitecture=MSIL

因此ServiceStack.Interfaces似乎导致了问题,但我需要引用它。我在某种程度上错误地引用了它吗?我该如何解决警告?

1 个答案:

答案 0 :(得分:5)

ServiceStack.Interfaces是一个简单的PCL库,它刚刚使用VS2017的新MSBuild格式引用System.Runtime.Serialization构建。它不是explicitly reference any version,PCL构建决定它使用的版本。

一旦.NET Standard 2.0和.NET Core 2.0发布,我们将把.NET标准库合并到ServiceStack的主要v5版本中的主ServiceStack NuGet包中,该版本将用.NET Standard取代PCL库。解决此警告,但在进行任何结构更改之前,我们需要等待v5。