EF.Core 读取数据库创建实体类

Posted 应世玉

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了EF.Core 读取数据库创建实体类相关的知识,希望对你有一定的参考价值。

以SQLite为例

1.新建wpf程序

2.打开程序包管理器控制台

3.输入:Install-Package Microsoft.EntityFrameworkCore.Tools

4.输入:Install-Package Microsoft.EntityFrameworkCore.Sqlite

5.输入:Scaffold-DbContext \'DataSource=D:\\kfdata.db;\' Microsoft.EntityFrameworkCore.Sqlite   -OutputDir Models

 

完成后会在项目下出现Midels文件夹,里面就是数据库说有实体

MsSql Mysql Ef Core DBFirst 根据数据库更新实体类

//EFCore DB First 步骤

Sql server 版本:

Install-Package Microsoft.EntityFrameworkCore
Install-Package Microsoft.EntityFrameworkCore.SqlServer
Install-Package Microsoft.EntityFrameworkCore.Tools
Install-Package Microsoft.VisualStudio.Web.CodeGeneration.Design

 

Mysql 版本:

Install-Package MySql.Data.EntityFrameworkCore -Pre
Install-Package Microsoft.EntityFrameworkCore.Tools
Install-Package Microsoft.VisualStudio.Web.CodeGeneration.Design

如果遇上版本问题mysql可以用这个类库

Install-Package Pomelo.EntityFrameworkCore.MySql

 

//同步数据库映射关系对象

Scaffold-DbContext -Connection "Data Source=139.159.252.186;Initial Catalog=DB;User ID=sa;Password=sa;" -Provider "Microsoft.EntityFrameworkCore.SqlServer" -OutputDir "EntityModel"  

Scaffold-DbContext -Connection "Data Source=139.159.252.186;Initial Catalog=DB;User ID=sa;Password=sa;" -Provider "Pomelo.EntityFrameworkCore.MySql" -OutputDir "EntityModel"  

//第六部更新实体
Scaffold-DbContext -Connection "Data Source=139.159.252.186;Initial Catalog=DB;User ID=sa;Password=sa;" -Provider "Microsoft.EntityFrameworkCore.SqlServer" -OutputDir "EntityModel" -Force
Scaffold-DbContext -Connection "Data Source=139.159.252.186;Initial Catalog=DB;User ID=sa;Password=sa;" -Provider "Pomelo.EntityFrameworkCore.MySql" -OutputDir "EntityModel"   -Force
 
nuget参数说明:

-OutputDir *** 实体文件所存放的文件目录
-ContextDir *** DbContext文件存放的目录
-Context *** DbContext文件名
-Schemas *** 需要生成实体数据的数据表所在的模式
-Tables *** 需要生成实体数据的数据表的集合
-DataAnnotations
-UseDatabaseNames 直接使用数据库中的表名和列名(某些版本不支持)
-Force 强制执行,重写已经存在的实体文件

 

以上是关于EF.Core 读取数据库创建实体类的主要内容,如果未能解决你的问题,请参考以下文章