Entity Framework Core 3.1 入门(一)创建项目

此入门教程是记录下方参考资料视频的过程,本例基于Entity Framework Core 3.1
开发工具:Visual Studio 2019

参考资料:https://www.bilibili.com/video/BV1xa4y1v7rR

目录

Entity Framework Core 3.1 入门(一)创建项目

Entity Framework Core 3.1 入门(二)创建数据库和迁移(Migration)文件

Entity Framework Core 3.1 入门(三)一对一、多对多

Entity Framework Core 3.1 入门(四)增删改查

Entity Framework Core 3.1 入门(五)关联数据的添加和查询

Entity Framework Core 3.1 入门(六)一对一和多对多关系的增删改查

Entity Framework Core 3.1 入门(七)执行原生SQL语句

Entity Framework Core 3.1 入门(八)在 ASP.NET Core 中配置 Entity Framework Core

Entity Framework Core 3.1

  • Entity Framework Core是一个ORM(Object Relational Mapping),对象关系映射
  • Entity Framework Core 3.1是一个长期支持版本

实例

  • 联赛:League,一个League对应多个Club
  • 足球队:Club,一个Club对应多个Player
  • 队员:Player

项目

  1. 新建空白解决方案

这里就命名为Demo吧,随意点

建立实体类

  1. 解决方向下新建项目 》类库 》命名为 Demo.Domain

  2. 在 Demo.Domain 下新建实体类

public class League
{
      public int Id { get; set; }
      public string Name { get; set; }
      public string Country { get; set; }
}
public class Club
{
      public Club()
      {
          //实例化列表,防止空指针异常
          this.Players = new List<Player>();
      }

      public int Id { get; set; }
      public string Name { get; set; }
      public string City { get; set; }
      //成立日期
      public DateTime DateOfEstablishment { get; set; }
      //比较长的描述性文字
      public string History { get; set; }

      //实体关系在此处建立联系
      public League League { get; set; }
      public List<Player> Players { get; set; }
}
public class Player
{
      public int Id { get; set; }
      public string Name { get; set; }
      public DateTime DateOfBirth { get; set; }
}

建立 DbContext

  1. 解决方向下新建项目 》类库 》命名为 Demo.Data

  2. NuGet 添加 Microsoft.EntityFrameworkCore.SqlServer

  3. 新建类 》命名为 DemoContext,继承 DbContext

public class DemoContext : DbContext
{
      public DbSet<League> Leagues { get; set; }
      public DbSet<Club> Clubs { get; set; }
      public DbSet<Player> Players { get; set; }
}
  1. override OnConfiguring() 方法
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
      //UseSqlServer(),参数是连接字符串
      optionsBuilder.UseSqlServer("Data Source=(localdb)\\MSSQLLocalDB; Initial Catalog=Demo");
}

建立启动项

  1. 这里我们使用控制台,解决方向下新建项目 》控制台 》命名为 Demo.App

  2. 依赖项 》右键 》添加引用,将 Demo.Domain 和 Demo.Data 勾选 》确定

  3. 右键 》设为启动项

EF Core 的约定

  1. 实体类中 Id 为主键
  2. 外键:实体+Id(也可以手动写外键,不冲突,需要在 DbContext 的 OnModelCreating() 添加相关配置)

创建项目 结束

posted @ 2021-02-02 15:23  .NET好耶  阅读(499)  评论(0编辑  收藏  举报