【发布时间】:2021-12-17 03:17:45
【问题描述】:
今天,我们将 EntityFrameworkCore 的 Nuget 包更新到了 5.0.11 版。不幸的是,这似乎弄乱了我的 VS 环境。每当我尝试编译时,都会收到错误消息:Severity Code Description Project File Line Suppression State Error CS1061 'DbContextOptionsBuilder' does not contain a definition for 'UseSqlServer' and no accessible extension method 'UseSqlServer' accepting a first argument of type 'DbContextOptionsBuilder' could be found (are you missing a using directive or an assembly reference?)
升级后Microsoft.EntityFrameworkCore.SqlServer 和Microsoft.EntityFrameworkCore.Tools 都匹配5.0.11 版本。
我尝试降级回 5.0.7,但这并没有解决问题。重新启动计算机不起作用。重新启动 Visual Studio 2019 也没有。我确实清理并重建了项目,但也保留了相同的错误消息。该项目确实引用了using Microsoft.EntityFrameworkCore;,它列在我的 .csproj 文件中。感谢任何其他解决此问题的建议。
编辑:我应该说这只发生在我的机器上,所以它更多的是环境问题。除了升级 nuget 包之外,没有进行其他更改。我确实升级回 5.0.11,它与 .csproj 文件中的内容相匹配。想知道这是否也发生在其他人身上。
【问题讨论】:
-
只要您有对
Microsoft.EntityFrameworkCore.SqlServer的包引用并且正在导入Microsoft.EntityFrameworkCore命名空间,这就是您所需要的。我会尝试重启 VS、重启、检查 .NET SDK 是否正确安装等。如果你从命令行执行dotnet build是否有效? -
尝试手动删除所有项目中的所有
Bin和Obj目录。还有package和.vs目录,如果你有的话。包升级后我经常需要。 -
感谢您的帮助! @JHBonarius 你的建议是从所有项目中删除 Bin 和 Obj 文件夹并重建工作。介意将其发布为答案,以便我接受吗?非常感谢您的帮助!
标签: asp.net-core entity-framework-core dbcontext