使用EF Core生成实体类 用来作为NetCore数据库访问上下文 Context

允我心安 提交于 2020-08-17 06:54:29
说明:版本 NetCOre3.0以上版本:
SQLServer版本:

1、安装包
Install-Package Microsoft.EntityFrameworkCore
   Install-Package Microsoft.EntityFrameworkCore.SqlServer
   Install-Package Microsoft.EntityFrameworkCore.Tools
   Install-Package Microsoft.VisualStudio.Web.CodeGeneration.Design

2、执行并生成实体

Scaffold-DbContext "Data Source=.;Initial Catalog=数据库名称;User ID=登录名;Password=密码" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models -Forc
MySQL版本:
1、安装包
Install-Package MySql.Data.EntityFrameworkCore -Pre
   Install-Package Pomelo.EntityFrameworkCore.MySql
   Install-Package Microsoft.EntityFrameworkCore.Tools
   Install-Package Microsoft.VisualStudio.Web.CodeGeneration.Design

2、执行并生成实体

Scaffold-DbContext "server=.(.代表本地);userid=用户名;pwd=密码;port=3306;database=数据库;sslmode=none;" Pomelo.EntityFrameworkCore.MySql -OutputDir Models -Force

 使用EF Core生成实体类

 

 

SQLServer版本:
Install-Package Microsoft.EntityFrameworkCore
   Install-Package Microsoft.EntityFrameworkCore.SqlServer
   Install-Package Microsoft.EntityFrameworkCore.Tools
   Install-Package Microsoft.VisualStudio.Web.CodeGeneration.Design
在"程序包包管理器控制台"中执行以下语句生成实体类:
Scaffold-DbContext "Data Source=.;Initial Catalog=数据库名称;User ID=登录名;Password=密码" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models -Forc

MySQL版本:

Install-Package MySql.Data.EntityFrameworkCore -Pre
   Install-Package Pomelo.EntityFrameworkCore.MySql
   Install-Package Microsoft.EntityFrameworkCore.Tools
   Install-Package Microsoft.VisualStudio.Web.CodeGeneration.Design
在"程序包包管理器控制台"中执行以下语句生成实体类:
Scaffold-DbContext "server=.(.代表本地);userid=用户名;pwd=密码;port=3306;database=数据库;sslmode=none;" Pomelo.EntityFrameworkCore.MySql -OutputDir Models -Force
或者:
Scaffold-DbContext "server=.;userid=用户名;pwd=密码;port=3306;database=数据库;sslmode=none;" Pomelo.EntityFrameworkCore.MySql -OutputDir Models -UseDatabaseNames -Force

--参数说明

-OutputDir *** 实体文件所存放的文件目录
  -ContextDir *** DbContext文件存放的目录
  -Context *** DbContext文件名
  -Schemas *** 需要生成实体数据的数据表所在的模式
  -Tables *** 需要生成实体数据的数据表的集合
  -DataAnnotations
  -UseDatabaseNames 直接使用数据库中的表名和列名(某些版本不支持)
  -Force 强制执行,重写已经存在的实体文件
一、打开Visual Studio 2019 新建一个ASP.NET Core MVC项目(WebApplication1),新建一个.NET Core类库(ClassLibrary2)
安装相应的Nuget包(本项目使用SqlServer)

 

 因为生成的实体要放在项目:NetCoreDBContext中

因此:需要在:工具-->Nut包管理器(N)--->程序包管理器控制台 找那个 要选择对应的项目,然后在执行对应的脚本。

如下:

 

 @天才卧龙的博客

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!