Entity Framework Fluent API用于配置域类以覆盖约定

在实体框架6中,DbModelBuilder类充当Fluent API,我们可以使用它来配置许多不同的东西。它提供了比数据注解属性更多的配置选项。

写流利API配置,覆盖OnModelCreating的方法DBContext在一个上下文类。

code First 三  Fluent API

code First 三  Fluent API

code First 三  Fluent APIcode First 三  Fluent API

 

 code First 三  Fluent APIcode First 三  Fluent API

 

    code First 三  Fluent APIcode First 三  Fluent API

code First 三  Fluent API

 

code First 三  Fluent API

 

使用Fluent API的属性映射:

   code First 三  Fluent APIcode First 三  Fluent API

code First 三  Fluent API

 

配置列名称,类型和顺序:

 code First 三  Fluent API

code First 三  Fluent API

为属性配置Null或NotNull列:

    code First 三  Fluent API

配置列大小:

  code First 三  Fluent API

配置并发列:

    code First 三  Fluent APIcode First 三  Fluent API

 

 

配置一对 零/一 关系:

当我们使用默认主键的时候:

code First 三  Fluent API

code First 三  Fluent API

当我们需要配置主键和外键的时候:

code First 三  Fluent APIcode First 三  Fluent API

code First 三  Fluent API

 

使用Fluent API配置一对一关系:

  数据库中我们看不到外键,但是确实是存在一对一的关系

    code First 三  Fluent APIcode First 三  Fluent APIcode First 三  Fluent API

 

在EF 6中配置一对多关系

       公约1,导航属性来约定:

   code First 三  Fluent APIcode First 三  Fluent API

注意引用属性是可以为空的,所以它Grade_GradeIdStudents表中创建一个可为空的外键列您可以Fluent API 配置可以为空的外键。

 

 约定2,集合导航属性

      code First 三  Fluent API

  公约3,  公约1和2的结合

   

  公约4 两端完全定义的关系将创建一对多的关系

   code First 三  Fluent APIcode First 三  Fluent API

code First 三  Fluent API

 

使用Fluent API配置一对多关系

 大多数情况下,您不需要在实体框架中配置一对多关系,因为一对多关系约定涵盖所有组合但是,您可以使用Fluent API来配置关系以使其可维护。

 code First 三  Fluent APIcode First 三  Fluent APIcode First 三  Fluent API

.HasRequired<grade>(s => s.CurrentGrade)指定该Student实体具有所需的CurrentGrade属性这将在DB中创建NotNull外键列

.WithMany(g => g.Students) 指定Grade实体包含许多Student实体

.HasForeignKey<int>(s => s.CurrentGradeId); 指定Student实体中外键属性

code First 三  Fluent API

使用Fluent API配置NotNull ForeignKey:

 code First 三  Fluent API

使用Fluent API配置级联删除:

   code First 三  Fluent API

 

 

在Code-First中配置多对多关系:

DataAnnotation中的多对多

 code First 三  Fluent API

code First 三  Fluent APIcode First 三  Fluent APIcode First 三  Fluent API

 

使用Fluent API配置多对多关系:

 code First 三  Fluent APIcode First 三  Fluent API

 

相关文章:

  • 2021-06-08
  • 2022-03-05
  • 2021-07-22
  • 2021-08-09
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-11-22
  • 2022-01-07
  • 2021-08-24
  • 2021-06-18
  • 2021-09-12
相关资源
相似解决方案