我在亚马逊云 (RDS) 中有一个 MySQL 数据库。这是一个只有一张表的小型数据库。
我想使用 EF Core,数据库优先。我知道 Pomelo.EntityFrameworkCore.MySql
包很受欢迎,但我看不到任何关于如何通过该包实现 Db 上下文脚手架的信息。
我关注了 instructions此处同时将 MySql.Data.EntityFrameworkCore.Design
替换为 Pomelo.EntityFrameworkCore.MySql
但是当我在程序包管理器控制台中运行以下命令时:
Scaffold-DbContext "Server=my-db.rds.amazonaws.com;database=TestDb;uid=blah;pwd=blah;" Pomelo.EntityFrameworkCore.MySql -OutputDir Models -f
我刚收到错误:
The specified framework version '2.0' could not be parsed
我错过了什么?这是我的虚拟解决方案的样子
最佳答案
您需要在您的 .csproj
中包含这些引用。当然,版本可能会有所不同。
<ItemGroup>
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="2.1.0-preview2-final" />
<PackageReference Include="Pomelo.EntityFrameworkCore.MySql" Version="2.0.1" />
<PackageReference Include="Pomelo.EntityFrameworkCore.MySql.Design" Version="1.1.2" />
</ItemGroup>
<ItemGroup>
<DotNetCliToolReference Include="Microsoft.EntityFrameworkCore.Tools.DotNet" Version="2.1.0-preview1-final" />
</ItemGroup>
注意:我必须手动将 DotNetCliToolReference
添加到 Microsoft.EntityFrameworkCore.Tools.DotNet
(不是通过 Manage Nuget Packages
在 Visual Studio
中查看)
关于mysql - EF Core MySQL 数据库优先?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49508003/