随笔分类 - Entity Framework Core 3.x
摘要:一、时间字段 在真实的开发中,为了跟踪数据的变化,一般会在数据表里面有CreatedTime和UpdatedTime两列。CreatedTime表示创建时间,新增一条数据的时候,会更新CreatedTime列的值。UpdatedTime表示更新时间,更新数据的同时也会更新UpdatedTime列的值
阅读全文
摘要:一、表名映射 我们知道:如果是在默认情况下,使用EFCore Code First的方式生成的表名跟数据上下文类中定义的实体属性的名称是一致的,例如: public DbSet<Blog> Bloges123 { get; set; } 这里定义的属性名称是Bloges123,那么最后数据库中生成的
阅读全文
摘要:一、什么是Data-Seeding Data-Seeding是EntityFrameworkCore 2.1以上版本新增加的特性。在项目刚开始的时候,我们往往是需要初始化一些基础数据到数据库中,通过Data-Seeding特性就可以实现这一功能。本篇文章我们将讲解如何进行数据初始化。 二、初始化方法
阅读全文
摘要:一、引言 生成数据库表有下面的三种方式: 代码生成。 程序包管理器控制台迁移。 命令行迁移。 下面分别介绍上面的三种方法。 二、具体示例 1、代码生成 在程序里面执行下面的代码可以在运行时生成数据库: dbContext.Database.EnsureCreated() 其中dbContext是数据
阅读全文
摘要:一、引言 我们先来讲解如何对EntityFrameworkCore进行单元测试,这里我们使用内存数据库进行测试。使用内存数据库需要安装Microsoft.EntityFrameworkCore.InMemory这个包。 二、创建测试项目 我们还是以上面文章中创建的项目为例,在解决方案中添加一个测试项
阅读全文
摘要:一、引言 我们以Entity Framework Core 最新版本3.1.1进行讲解,在正式的学习之前,我们第一步是要使用EF Core中的安装包,这时候需要明确的知道到底需要安装哪些包,我们下面先来讲解EF Core中需要使用到的一些包。 二、相关包极其概念 1、Microsoft.Entity
阅读全文
摘要:一、引言 这篇文章中我们讲解如何在Web项目中使用EntityFrameworkCore,并生成数据库表,这里以ASP.NET Core WebApi为例讲解。还是采用分层的结构。创建后的项目整体结构如下图所示: 项目结构: EFCoreWeb.API:ASP.NET Core WebApi项目,用
阅读全文
摘要:一、引言 我们使用Code First的方式来生成数据库表,我们先讲解如何在控制台项目中生成数据库表。 在前面的文章中,我们是直接在控制台项目中安装的Mircosoft.EntityFrameworkCore,在真实的项目中,我们很少这样使用,都是采用分层的结构,将EF Core有关的操作放在一个单
阅读全文