如何在 entity framework 核心 2.1 中创建不区分大小写的唯一索引

How to create unique index case insensitive at entity framework core 2.1

我使用 npqsql 4+ 和 efcore 2.1+,如何在字段上创建唯一不变的不区分大小写的约束?

以下构造不起作用:

modelBuilder.Entity<Company>().HasAlternateKey(city => city.Name.ToUpperInvariant());

不幸的是,似乎没有办法使用 Npgsql 驱动程序创建具有特定排序规则的索引。唯一可以在索引上完成的 PostgreSQL 特定配置是使用 ForNpgsqlHasMethod 扩展设置方法。你有 几个选项:

  1. Create/modify 带有一些 SQL 的索引,可能是迁移的一部分
  2. 请求 official Github project 上的功能,甚至编写您自己的功能并提交拉取请求!