⒈创建数据库,在数据中执行以下脚本。

 CREATE DATABASE Blogging;

 USE Blogging;

 CREATE TABLE Blog (
BlogId int not null PRIMARY key auto_increment,
Url text not null
); CREATE TABLE Post (
PostId int NOT NULL PRIMARY key auto_increment,
BlogId int NOT NULL,
Content text,
Title varchar(100),
CONSTRAINT FK_Post_Blog_BlogId FOREIGN KEY(BlogId) REFERENCES Blog(BlogId) ON DELETE CASCADE
); INSERT INTO Blog (Url) VALUES
('http://blogs.msdn.com/dotnet'),
('http://blogs.msdn.com/webdev'),
('http://blogs.msdn.com/visualstudio')

⒉添加依赖

  MySql.Data.EntityFrameworkCore

⒊实施反向工程,基于现有数据库创建数据表实体类及上下文。

  第一种方式:"Visual Studio 2019" >“工具”>“NuGet 包管理器”>“程序包管理器控制台”,执行以下命令(最好提前编译以下项目,否则以下命令可能执行不成功)

 #Scaffold-DbContext "数据库连接字符串" 数据库提供程序 -OutputDir 输出文件夹
Scaffold-DbContext "server=localhost;port=3306;database=blogging;user=root;password=admin;" MySql.Data.EntityFrameworkCore -OutputDir Models

  第二种方式:使用.Net Core CLI,执行以下命令

 #dotnet ef dbcontext scaffold "数据库连接字符串" 数据库提供程序 -o 输出文件夹
dotnet ef dbcontext scaffold "server=localhost;port=3306;database=blogging;user=root;password=admin;" MySql.Data.EntityFrameworkCore -o Models

⒋使用依赖注入将上下文注册为服务

 public void ConfigureServices(IServiceCollection services)
{
services.Configure<CookiePolicyOptions>(options =>
{
// This lambda determines whether user consent for non-essential cookies is needed for a given request.
options.CheckConsentNeeded = context => true;
options.MinimumSameSitePolicy = SameSiteMode.None;
}); services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_2); var connection = Configuration["ConnectionStrings:MySqlConnection"]; services.AddDbContext<BloggingDbContext>(options =>
{
options.UseMySQL(connection);
});
}

ASP.NET Core中使用EF Core(MySql)Database First的更多相关文章

  1. 在ASP.NET Core中通过EF Core实现一个简单的全局过滤查询

    前言 不知道大家是否和我有同样的问题: 一般在数据库的设计阶段,会制定一些默认的规则,其中有一条硬性规定就是一定不要对任何表中的数据执行delete硬删除操作,因为每条数据对我们来说都是有用的,并且是 ...

  2. ASP.NET Core 中使用EF Core 将实体映射到数据库表的方法(SQL Server)

    前段时间听过一个关于使用ASP.NET Core建立项目的视频.其中使用EF Core映射到数据库的部分是按部就班地学习.今天自己建立项目时,有些步骤已经有一些遗忘.所以写下这篇文章,顺便理清思路. ...

  3. ASP.NET Core中使用EF Core(MySql)Code First

    ⒈添加依赖 MySql.Data.EntityFrameworkCore ⒉在appsettings.json配置文件中配置数据库连接字符串 { "Logging": { &quo ...

  4. .NET Core中使用EF Core连接MySQL

    最近一直在捣鼓.NET Core方面的东西,顺便写下点东西记录下 1.打开vs2017,新建一个项目 2.vs会自动生成一个项目,然后打开NuGet搜索MySql.Data.EntityFramewo ...

  5. .net core 中使用ef 访问mysql

    1.参考文档说修改项目文件添加,就得这么做,不然会报错 <ItemGroup> <DotNetCliToolReference Include="Microsoft.Ent ...

  6. Asp.net core下利用EF core实现从数据实现多租户(1)

    前言 随着互联网的的高速发展,大多数的公司由于一开始使用的传统的硬件/软件架构,导致在业务不断发展的同时,系统也逐渐地逼近传统结构的极限. 于是,系统也急需进行结构上的升级换代. 在服务端,系统的I/ ...

  7. Asp.net core下利用EF core实现从数据实现多租户(3): 按Schema分离 附加:EF Migration 操作

    前言 前段时间写了EF core实现多租户的文章,实现了根据数据库,数据表进行多租户数据隔离. 今天开始写按照Schema分离的文章. 其实还有一种,是通过在数据表内添加一个字段做多租户的,但是这种模 ...

  8. 万字长文,带你彻底理解EF Core5的运行机制,让你成为团队中的EF Core专家

    在EF Core 5中,有很多方式可以窥察工作流程中发生的事情,并与该信息进行交互.这些功能点包括日志记录,拦截,事件处理程序和一些超酷的最新出现的调试功能.EF团队甚至从Entity Framewo ...

  9. [翻译 EF Core in Action 1.10] 应该在项目中使用EF Core吗?

    Entity Framework Core in Action Entityframework Core in action是 Jon P smith 所著的关于Entityframework Cor ...

随机推荐

  1. c++回溯法求组合问题(取数,选取问题)从n个元素中选出m个的回溯算法

    假如现在有n个数,分别从里面选择m个出来,那么一共有多少种不同的组合呢,分别是哪些呢? 利用计算机的计算力,采用回溯算法很容易求解 程序源代码如下: #include<iostream># ...

  2. CUDA-F-1-1-异构计算-CUDA

    开篇废话 成熟与智慧其实和年龄相关,但绝不是完全由年龄决定,少年老成的人肯定是存在的,不是长得老,而是心态成熟,当然大多数老年人其实有些事情思考起来还是老原则,所以他们有时候做事没那么周到,所以一个人 ...

  3. 洛谷P3193 GT考试 kmp+矩阵优化dp

    题意 求\(N\)位数字序列(可以有前导0)中不出现某\(M\)位子串的个数,模\(K\). \(N<=10^9,M<=20,K<=1000\) 分析 设\(dp[i][j]\)表示 ...

  4. codeforces297B

    Fish Weight CodeForces - 297B It is known that there are k fish species in the polar ocean, numbered ...

  5. java web过滤器防止未登录进入界面

    import java.io.IOException; import javax.servlet.Filter; import javax.servlet.FilterChain; import ja ...

  6. centos调整屏幕亮度

    笔记本安装centos6.5后亮度无法通过键盘快捷键调节,可以通过安装软件来调节. 安装:yum install xgamma 设置亮度:xgamma -gamma n( 0.1 < n < ...

  7. tp5最强分页 自定义model,控制器引用。只显示一页

    1.不多逼逼 model 代码 <?phpnamespace app\common\model; use think\Model; class Fpage{ private $page;//当前 ...

  8. 为什么有些应用非VxWorks不可

          实时操作系统(RTOS)是专用于对时间精确度敏感的操作系统.典型的情况是,这种应用需要从传感器收集数据.做出分析并对关键性设备进行控制,例如飞机.列车.手术刀.这类控制必须精准,不容许出现 ...

  9. VNC Viewer配置

    VNC概述 VNC (Virtual Network Computing)是虚拟网络计算机的缩写.VNC 是一款优秀的远程控制工具软件,由著名的 AT&T 的欧洲研究实验室开发的.VNC 是在 ...

  10. Spring核心内容-认识bean