.NET框架 - NETCORE + API + EF + MYSQL

.NET框架 - NETCORE + API + EFCORE + MYSQL

 

1. 新建项目:

 

 


本文中使用 框架 .netcore2.2 。html

 

 

 

 

 2. 生成项目框架

  

 

 

3 安装MYSQL插件

 

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

 

安装命令:install-package <程序包名> -version <版本号>web

 

分别安装如下几个包sql

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 版本:json

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

 

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

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

--sql server 版本框架

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

 

参数说明:asp.net

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

 

 

 

 

  4. 配置DBContext

ASP.NET Core 应用程序链接字符串是写死在ConfigureServices代码中,下面介绍经过配置来实现。链接字符串能够存储在 appsettings.json、用户机密存储、其余配置源中。 下面示例演示appsettings.json 中存储的链接字符串,这样无论asp.net core在什么环境(Development、Staging 、Production)都能调用该文件。工具

 

生成的DBContext中是包含数据库链接字段的,咱们须要把它放在配置文件中。

 

 

 

{ "Logging": { "LogLevel": { "Default": "Warning" } }, "AllowedHosts": "*", "ConnectionStrings": { "MES_MySql": "server=localhost;userid=root;pwd=123456;port=3306;database=db1;sslmode=none;" } }

 

 

 

 一般在Startup.cs读取链接字符串。 使用GetConnectionString()方法查找配置值,该查询的格式:ConnectionStrings:<connection string name>其中键是connection

 

// var connection = "Data Source = {ip}; Initial Catalog = EFGetStarted.AspNetCore.NewDb; User ID = hsr;Password =js*2015;";
   // var connection = Configuration.GetConnectionString("BloggingDatabase");
   // services.AddDbContext<EFGetStartedAspNetCoreNewDbContext>(options => options.UseSqlServer(connection));
   

      var connection = Configuration.GetConnectionString("MES_MySql");
      services.AddDbContext<db1Context>(options => options.UseMySQL(connection));

 

5. 在webAPI应用程序中,使用依赖注入的方式。

 

 

 完成。 

 

 

 

  

引用:https://www.cnblogs.com/yangjinwang/p/9516988.html

引用:https://www.cnblogs.com/MrHSR/p/10364918.html

相关文章
相关标签/搜索