官方文档详见:https://dev.mysql.com/doc/connector-net/en/connector-net-entityframework-core-scaffold-example.html
Scaffolding a Database Using Package Manager Console in Visual Studio
-
Open Visual Studio and create a new Console App (.NET Core) for C#.
-
Add the MySQL NuGet package for EF Core using the Package Manager Console. For example, use the following command to add the
MySql.Data.EntityFrameworkCore v8.0.13package:Install-Package MySql.Data.EntityFrameworkCore -Version 8.0.13Note
The version (for example,
-v 8.0.13) must match the actual Connector/NET version you are using. For current version information, seeTable 9.2, “Supported versions of Entity Framework Core”. -
Install the following NuGet packages by selecting either Package Manager Console or Manage NuGet Packages for Solution from the Tools and then NuGet Package Manager menu:
-
Microsoft.EntityFrameworkCore.DesignEF Core 1.1 only: Also add the
MySql.Data.EntityFrameworkCore.Designpackage. -
Microsoft.EntityFrameworkCore.Tools version 1.1.6(for EF Core 1.1) andMicrosoft.EntityFrameworkCore.Tools version 2.0.3(for EF Core 2.0)Note
The .NET tools are included in the .NET Core 2.1 SDK and not required or supported for EF Core 2.1. If this is an upgrade, remove the reference to that package from the .
csprojfile (version 2.0.3 in this example) :<DotNetCliToolReference Include="Microsoft.EntityFrameworkCore.Tools.DotNet" Version="2.0.3" />
-
-
Open Package Manager Console and enter the following command at the prompt to create the entities and DbContext for the
sakiladatabase (adjust the connection-string values to match your settings for theuser=andpassword=options):Scaffold-DbContext "server=localhost;port=3306;user=root;password=mypass;database=sakila" MySql.Data.EntityFrameworkCore -OutputDir sakila -fVisual Studio creates a new
sakilafolder inside the project, which contains all the tables mapped to entities and thesakilaContext.csfile.