VS.NET中System.Text.Json 7.0.0.0与7.0.0.3版本冲突问题及解决方法
System.Text.Json版本冲突问题及解决
错误提示
发现版本冲突:"System.Text.Json, Version=7.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51" 和 "System.Text.Json, Version=7.0.0.3, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51"。 最终选择了"System.Text.Json, Version=7.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51",因为它是主引用,而"System.Text.Json, Version=7.0.0.3, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51"不是。 依赖"System.Text.Json, Version=7.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51"的引用来源:[C:\Users\martin\.nuget\packages\system.text.json\7.0.3\lib\netstandard2.0\System.Text.Json.dll]。 C:\Users\martin\.nuget\packages\system.text.json\7.0.3\lib\netstandard2.0\System.Text.Json.dll 项目文件中导致该引用的项: C:\Users\martin\.nuget\packages\system.text.json\7.0.3\lib\netstandard2.0\System.Text.Json.dll 依赖"System.Text.Json, Version=7.0.0.3, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51"的引用来源:[]。 C:\Users\martin\.nuget\packages\microsoft.extensions.configuration.json\7.0.0\lib\netstandard2.0\Microsoft.Extensions.Configuration.Json.dll 项目文件中导致该引用的项: C:\Users\martin\.nuget\packages\microsoft.extensions.configuration.json\7.0.0\lib\netstandard2.0\Microsoft.Extensions.Configuration.Json.dll C:\Users\martin\.nuget\packages\microsoft.extensions.dependencymodel\7.0.0\lib\netstandard2.0\Microsoft.Extensions.DependencyModel.dll 项目文件中导致该引用的项: C:\Users\martin\.nuget\packages\microsoft.extensions.dependencymodel\7.0.0\lib\netstandard2.0\Microsoft.Extensions.DependencyModel.dll C:\Users\martin\.nuget\packages\serilog.settings.configuration\7.0.1\lib\netstandard2.0\Serilog.Settings.Configuration.dll sbackend
对问题的理解
- 存在两个System.Text.Json版本:7.0.0.0和7.0.0.3
- Visual Studio选择7.0.0.0作为主版本
- 有2个依赖项需要7.0.0.3版本
疑问
- 7.0.0.0版本的依赖来源是什么?
- 为什么7.0.0.0被设为主版本?
- .csproj文件中引用的是7.0.3版本,为何提示的版本号少一位?
项目中的Package引用配置
<PackageReference Include="System.Text.Json"> <Version>7.0.3</Version> </PackageReference>
问题解决
移除App.config中自动生成的bindingRedirect节点后,问题得到解决。
- <dependentAssembly> - <assemblyIdentity name="System.Text.Json" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" /> - <bindingRedirect oldVersion="0.0.0.0-7.0.0.3" newVersion="7.0.0.3" /> - </dependentAssembly>
内容的提问来源于stack exchange,提问作者faljse
相关产品推荐
相关产品推荐

