EF CORE DBFirst

DBFirst :先设计好数据库,再从数据库映射到程序

一、首先需要NuGet导入几个程序包

1、Sql server:

   Install-package Microsoft.EntityFrameworkCore

    Install-package Microsoft.EntityFrameworkCore.Tools

    Install-package Microsoft.EntityFrameworkCore.Design

    Install-package Microsoft.EntityFrameworkCore.SqlServer

    Install-package Microsoft.EntityFrameworkCore.SqlServer.Design 

2、Mysql:

    Install-Package MySql.Data.EntityFrameworkCore -Pre

    Install-Package Pomelo.EntityFrameworkCore.MySql

    Install-Package Microsoft.EntityFrameworkCore.Tools

    Install-Package Microsoft.VisualStudio.Web.CodeGeneration.Design

二、在程序包管理器控制台执行命令

调出控制台:工具-NuGet工具包管理器-程序包管理器控制台-输入

1、Sql server:

Scaffold-DbContext "server=.;database=;uid=;pwd=;" Microsoft.EntityFrameworkCore.SqlServer -Project "Abn.Models" -Output School -F -UseDatabaseNames

2、Mysql:

Scaffold-DbContext "server=.;userid=tech5_kj;pwd=xxx;port=3306;database=tech5_kj;sslmode=none;" Pomelo.EntityFrameworkCore.MySql -OutputDir Models -Force

或者

Scaffold-DbContext "server=.;userid=tech5_kj;pwd=xxx;port=3306;database=tech5_kj;sslmode=none;" Pomelo.EntityFrameworkCore.MySql -OutputDir Models -UseDatabaseNames -Force

解读:server:本地sql登录的服务器id地址

       database:数据库名称

       ued:sql登录账号

       pwd:sql密码

       Project:项目名称(解决方案下面新建一个类库项目)

       Output:实体文件所存放的文件夹

       F:force的缩写,强制更新,重写已经存在的实体文件

      UseDatabaseNames:直接使用数据库中的表名和列名(某些版本不支持)

三、Net 5 中更新(.NET Core CLI)

1、在程序包管理控制台安装 dotnet ef

dotnet tool install --global dotnet-ef

2、cd到数据模型存放目录

cd Abn.Models

3、执行更新命令

dotnet ef dbcontext scaffold "server=;database=;uid=;pwd=;" Microsoft.EntityFrameworkCore.SqlServer -o School -f --use-database-names --no-pluralize

未完待续。。。

posted @ 2021-01-08 17:46  清和时光  阅读(436)  评论(0编辑  收藏  举报