将PostgreSQL 9.5迁移到10 - 外键,主键

时间:2017-10-18 15:10:24

标签: c# postgresql entity-framework postgresql-10

我正在将Postgresql 9.5迁移到Postgresql 10 我还有一个Visual Studio .net组件(npgsql)集成,它可以帮助我连接和使用.NET的Entity Framework。

我被迫在两个大(巨大)表上使用分区 我注意到Postgresql 10上的分区表上没有外键或主键。

这是一个问题,因为我的Visual Studio已经使用多个外键和一个主键声明了表,我必须更改所有代码,是否有任何可能的解决方案或解决方法?

我关心的是我在c#中的代码,它需要所有表上的主键,没有主键或外键我不确定代码是否有效。 实际上,我手动创建了我的类。 EF需要主键,还是我的错误信念? 另外,如果声明数据库中不存在的外键,EF会出错?

我的代码如下所示:

`

public class TableConfiguration : EntityTypeConfiguration

{
public TableConfiguration(string schema) :
base(schema, "id_d")
{
        HasRequired(x => x.f)
        .WithMany(x => x.Tables)
        .HasForeignKey(x => x.id_f)
        .WillCascadeOnDelete(false);
        HasRequired(x => x.er)
            .WithMany(x => x.Tables)
            .HasForeignKey(x => x.res)
            .WillCascadeOnDelete(false);

        HasMany(x => x.dc)
            .WithRequired(x => x.Table)
            .HasForeignKey(x => x.id_d);

        HasMany(s => s.n)
            .WithRequired(s => s.Table)
            .HasForeignKey(s => s.id_d);
    }
}
}`

TKS!

0 个答案:

没有答案