【发布时间】:2018-09-30 11:32:43
【问题描述】:
从 ASP.NET Core 2.0 升级到 2.1-preview2 后,出现以下错误:
Error CS1705 Assembly 'System.Data.SqlClient' with identity 'System.Data.SqlClient, Version=4.4.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' uses 'System.Runtime, Version=4.2.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' which has a higher version than referenced assembly 'System.Runtime' with identity 'System.Runtime, Version=4.2.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'
当我四处寻找类似的错误时,我看到很多关于 csproj 或 json 文件中引用的版本的讨论(取决于讨论的时间)。但是在 .NET Core 中只有一个对 Microsoft.AspNetCore.App 的引用。所以,我没有任何方法可以操作对System.Data.SqlClient 或System.Runtime 的引用
另一个观察结果是,虽然大多数错误是指像 connection.Open() 这样的真实代码,但有两个引用是对不存在的文件 CSC 行 1。
更新:如果我创建一个新项目并将有问题的代码复制到那里,我不会收到任何错误。所以,显然对不匹配版本的引用在项目中的某个地方......但我不知道在哪里!
【问题讨论】:
-
看起来
System.Data.SqlClient程序集依赖于程序集System.Runtime, Version=4.2.1.0。您的项目正在使用程序集System.Runtime, Version=4.2.0.0。 -
好的。和?我可以修吗?我没有明确包括任何一个。只是
"Microsoft.AspNetCore.App" Version="2.1.0-preview2-final" -
查看项目的目标 .NET Framework。这就是新项目开箱即用的原因。
-
它是适用于所有人的 2.1
标签: c# asp.net-core asp.net-core-2.0 conflicting-libraries