Npgsql 的范围类型

Range type with Npgsql

我正在使用 Npgsql 和 EF Core 对现有 Postgres 数据库的表示进行逆向工程。事情似乎至少大部分都到位了,除了我注意到我的范围类型列中的 none 存在。考虑到 C# 没有自然类似的数据类型,这并不奇怪。

似乎有某种基于此线程的支持https://github.com/npgsql/npgsql/issues/126 and the notes here http://www.npgsql.org/dev/types.html,但到目前为止我还没有找到有关如何实施任何内容的任何详细信息。

编辑: 我找到了 NpgsqlRange 类型,但我收到错误 'NpgsqlRange<int>' which is not supported by current database provider。我也用 .HasColumnType("int4range") 设置了模式生成器。

Npgsql 在 ADO.NET 级别完全支持 PostgreSQL 范围,但 Entity Framework 核心提供程序不包括对此的支持(坦率地说,没有人要求它,因为范围使用似乎有点罕见)。 An issue is already open for this,我会努力为 1.2 完成这项工作。