Npgsql 是否公开了 PostgreSQL 列类型的强类型列表?
Does Npgsql expose a strongly-typed list of PostgreSQL column types?
Npgsql 在 System.Net.IPAddress
和 Postgres 的 inet
列类型之间提供 a mapping。
我的 EF Core 配置包含:
builder
.Property(p => p.IPAddress)
.HasColumnType("inet") // I want to avoid this magic string
.Required();
我知道我可以省略它,但我想说清楚。
Npgsql 是否有常量、枚举或类型我可以用来代替硬编码"inet"
?
(例如 NpgsqlColumnTypes.IPAddress
等于 "inet"
。)
您可以打开一个 NpgsqlConnection,访问它的 TypeMapper
并在 Mappings
上进行枚举 - 这应该会为您提供 Npgsql 在该特定 PostgreSQL 上支持的所有 PostgreSQL 类型。
然而,这真的没有必要。标准做法是将类型名称简单地嵌入为字符串。它们是 well-known 永远不变的稳定名称。
Npgsql 在 System.Net.IPAddress
和 Postgres 的 inet
列类型之间提供 a mapping。
我的 EF Core 配置包含:
builder
.Property(p => p.IPAddress)
.HasColumnType("inet") // I want to avoid this magic string
.Required();
我知道我可以省略它,但我想说清楚。
Npgsql 是否有常量、枚举或类型我可以用来代替硬编码"inet"
?
(例如 NpgsqlColumnTypes.IPAddress
等于 "inet"
。)
您可以打开一个 NpgsqlConnection,访问它的 TypeMapper
并在 Mappings
上进行枚举 - 这应该会为您提供 Npgsql 在该特定 PostgreSQL 上支持的所有 PostgreSQL 类型。
然而,这真的没有必要。标准做法是将类型名称简单地嵌入为字符串。它们是 well-known 永远不变的稳定名称。