有没有办法在Entity Framework + PostgreSql中使用ARRAY

ax1*_*mx2 6 arrays postgresql entity-framework npgsql

是否可以在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; }
        }
Run Code Online (Sandbox Code Playgroud)

此时,Entity Framework不会创建列"somedata"并跳过它.有没有办法做到这一点?而且我的意思是不必使用单独的表格.Postgres数组在您希望将少量或有限数量的值存储到单个列中时会派上用场.

Mat*_*ams 6

如果您将Entity Framework CoreNpgsql EF Core provider一起使用,则可以执行此操作。

代码优先的方法是:

[Column("somedata", TypeName = "integer[]")]
public int[] SomeData { get; set; }
Run Code Online (Sandbox Code Playgroud)