EF Core - 添加唯一约束

EF Core - Add Unique Constraint

我想在 ASP.NET Core

中使用模型构建器添加唯一约束

这是我发现的:

        modelBuilder.Entity<Ticker>()
            .HasIndex(r => r.Name)
            .IsUnique();

但是在更新数据库后它添加了索引而不是约束。 有没有办法添加约束? 谢谢你的回答。

虽然您使用 .HasIndex(r => r.Name).IsUnique(),但它会创建一个唯一的 Index 而不是 Constraint。但是效果是一样的。它会阻止您为 Name.

添加重复值

However after updating database it adds index instead of constraint. Is there the way to add constraint?

如果您必须添加 Constraint,我建议您使用 HasAlternateKey 方法,该方法允许您通过放置唯一约束来创建备用键:

modelBuilder.Entity<Ticker>()
           .HasAlternateKey(r => r.Name);

然后你可以看到它在数据库中添加了如下唯一约束: