Asp.Net core +MySql 操作步骤

  首先VS 需要MySQL驱动

  下载了MySql 8.0 安装包进行安装VS驱动和ODBC驱动的安装

  下一步:Asp.net core的正常创建过程

  Next:视图控制器的步骤按部就班

  Next:模型的创建

  Next:DbContext 的创建

    

1.点击“工具”->“NuGet包管理器”->“程序包管理器控制台”

分别安装以下几个包

Mysql 版本:

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

Sql server 版本:

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

2.在程序包包管理器控制台   中执行以下语句生成 实体类
--mysql 版本:

Scaffold-DbContext "server=localhost;userid=root;pwd=123456;port=3306;database=ame_data;sslmode=none;" Pomelo.EntityFrameworkCore.MySql -OutputDir Models -Force
或者
Scaffold-DbContext "server=localhost;userid=root;pwd=123456;port=3306;database=ame_data;sslmode=none;" Pomelo.EntityFrameworkCore.MySql -OutputDir Models -UseDatabaseNames -Force
--sql server 版本

Scaffold-DbContext "Data Source=.;Initial Catalog=EFCore_dbfirst;User ID=sa;Password=123456" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models -Force
 

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

  Next:控制台命令 Add-Migration <Name>

    提前在MySql数据库中创建一个表    

//SQL server
CREATE TABLE `__EFMigrationsHistory` 
( 
    `MigrationId` nvarchar(150) NOT NULL, 
    `ProductVersion` nvarchar(32) NOT NULL, 
     PRIMARY KEY (`MigrationId`) 
);

//MySql
CREATE TABLE `__EFMigrationsHistory` 
( 
    `MigrationId` varchar(150) NOT NULL, 
    `ProductVersion` varchar(32) NOT NULL, 
     PRIMARY KEY (`MigrationId`) 
);

    然后  Update-Database 完成

  Next:*发挥

Asp.Net core +MySql 操作步骤

上一篇:SQL Server 2012配置Always On可用性组


下一篇:解决mysql for docker容器报错:Authentication plugin 'caching_sha2_password' cannot be loaded