是否可以在Entity Framework中使用PostgreSql中的数组?
例如,假设我们有POCO类
public class MyTable
{
[Key]
[Column("gid")]
public int Gid { get; set; }
[Column("name")]
public string Name { get; set; }
[Column("email")]
public string Email { get; set; }
[Column("somedata")]
public int[] SomeData { get; set; }
}
此时,实体框架根本不会创建列" somedata"并跳过它。有没有办法做到这一点?而且我的意思是不必使用单独的表格。 Postgres数组在您希望将少量或有限数量的值存储到单个列中时会派上用场。
答案 0 :(得分:3)
如果您将Entity Framework Core与Npgsql EF Core provider一起使用,则可以执行此操作。
代码优先方法是:
[Column("somedata", TypeName = "integer[]")]
public int[] SomeData { get; set; }