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 读取数据库创建实体类的主要内容,如果未能解决你的问题,请参考以下文章

VS2019 使用EF Core Power Tools 生成Sqlserver的数据库实体类

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

如何将同一列添加到 EF Core 中的所有实体?

使用 MVVM 创建具有现有外部属性的 EF Core 实体

EF Core开发模式之Code First

Entity Framework Core是如何根据实体类生成模型的?