Создайте уникальное ограничение для Postgres с. NET core 3 и Npg sql (сначала код) - PullRequest
0 голосов
/ 16 февраля 2020

Я пытаюсь установить ограничение уникальности для столбца таблицы, используя Npg sql EF Core Provider.

В приведенном ниже фрагменте HasDefaultValueSql работает нормально, но HasIndex(i => i.ItemCode).IsUnique() не влияет на сгенерированный миграции и нет никакого индекса, созданного в поле ItemCode .

protected override void OnModelCreating(ModelBuilder modelBuilder)
{
  modelBuilder.UseSnakeCaseNames();
  modelBuilder.HasPostgresExtension("uuid-ossp");

  modelBuilder.Entity<InventoryStockItem>().Property(p => p.Id).HasDefaultValueSql("uuid_generate_v4()");
  modelBuilder.Entity<InventoryStockItem>().HasIndex(i => i.ItemCode).IsUnique();

  base.OnModelCreating(modelBuilder);
}
...