如何使用实体框架核心为 postgress 数据库安装 TimescaleDB 扩展

Tim*_*ost 3 postgresql timescaledb ef-core-2.2

我想在包含时间序列数据的特定表上使用TimescaleDB 。我的问题是如何从实体框架核心设置时间序列并使特定表成为超级表

数据库:Postgress 版本 11 框架:Ef Core 2.2 方法:Code First

Tim*_*ost 5

这是代码优先 EF 的解决方案。这非常简单。

1)在要使用时间刻度数据库缩放的表模型中添加一个日期时间字段。

2)安装Postgres的时间刻度插件。

CREATE EXTENSION timescaledb;
Run Code Online (Sandbox Code Playgroud)

3) 在数据库播种器或初始化器中执行以下 SQL。

dbcontext.Database.ExecuteSqlCommand("SELECT create_hypertable('table_name', 'datetime_field_name');");
Run Code Online (Sandbox Code Playgroud)

datetime_field_name是时间刻度数据库必需的日期时间字段(参见 1))