我们有一个已经建立了超过x年的大型实体模型,我想知道以下情况是否可能:我们有很多旧的实体,我们没有直接将外键暴露给其他表,但它们在实体框架中有关联。也就是说,表1与表2有一对多的关系,表2在数据库表上有一个Table1_ID字段,但我不能从我的C#/实体框架代码中访问它。有没有一种干净的方式来显示/添加这个,而不删除和读取关联?这是在Model First实体框架中
发布于 2017-06-07 08:37:21
您可以使用数据注释并在Table2模型上添加属性:
using System.ComponentModel.DataAnnotations.Schema;
...
[Column("Table1_ID")]
public int Table1Id { get; set; }如果您使用的是fluent api,可以这样配置:
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Entity<Table2>()
.Property(t => t.Table1Id)
.HasColumnName("Table1_ID");
}然后创建一个新的迁移并删除Up和Down函数中的所有内容。
public partial class Add_Table1_Reference_To_Table2_Model : DbMigration
{
public override void Up()
{
}
public override void Down()
{
}
}https://stackoverflow.com/questions/44401665
复制相似问题