EntityFramework 7和唯一约束(数据注释或流体)

时间:2016-01-02 13:15:33

标签: unique-constraint entity-framework-core

我一直在网上寻找一种方法来创建一个独特的约束,首先使用代码使用数据注释或使用Fluid API for Entityframework 7 ..这还没有实现,或者我怎么找不到任何关于此的信息? 有关如何使用代码和EF7创建此类约束的任何想法? 无论如何在我的OnModelCreating结束时执行一个SQL脚本到#34;手动"在我等待更多" solid"这样做的方式?

BR, INX

2 个答案:

答案 0 :(得分:2)

您可以使用备用键:

    protected override void OnModelCreating(ModelBuilder modelBuilder)
    {
        modelBuilder.Entity<Car>()
            .HasAlternateKey(c => c.LicensePlate);
    }

它们是通过唯一索引强制执行的,是SQL Server,请参阅https://docs.microsoft.com/en-us/ef/core/modeling/alternate-keys

答案 1 :(得分:2)

我相信您可以使用流畅的API执行此操作,但我还没有找到DataAnnotation。

    protected override void OnModelCreating(ModelBuilder modelBuilder)
    {
        modelBuilder.Entity<EntityClass>(entity =>
        {
            entity.HasIndex(e => e.Index).IsUnique();
        });
    }