- 替代键(唯一约束)
- 惯例
- 数据注解
- 流式 API
替代键(唯一约束)
注意
当前章节中涉及的配置一般适用于关系数据库。这里展示的扩展方法在你安装了关系数据库提供程序之后就能获得(由
Microsoft.EntityFrmeworkCore.Relational程序包共享)。
唯一约束是为模型中的替代键引入的。
惯例
按照惯例,为替代键引入的索引和约束都被命名为 AX_<实体类型名称>_<属性名称>。对于组合替代键,<属性名> 为用下划线分隔的属性名。
数据注解
不能使用数据注解来配置唯一索引。
流式 API
可以使用流式 API 来为替代键配置索引和约束的名称。
class MyContext : DbContext{public DbSet<Car> Cars { get; set; }protected override void OnModelCreating(ModelBuilder modelBuilder){modelBuilder.Entity<Car>().HasAlternateKey(c => c.LicensePlate).HasName("AlternateKey_LicensePlate");}}class Car{public int CarId { get; set; }public string LicensePlate { get; set; }public string Make { get; set; }public string Model { get; set; }}
