我正在使用实体框架代码前 5 个和流利的映射 API。我有一个名为“ENTITY”的关节表,有 3 列
ENTITY1_ID int
ENTITY2_ID int
LEVEL int
与关联模型
public class ENTITY
{
public virtual ENTITY1 ENTITY1 {get; set;}
public virtual ENTITY2 ENTITY2 {get; set;}
public virtual int LEVEL {get; set;}
}
其中 ENTITY1_ID 和 ENTITY2_ID 是两个表的外键。在映射代码中,我成功声明了外键,而无需向实体类添加关联属性:
this.HasRequired(t => t.ENTITY1).WithMany().Map(m => m.MapKey("ENTITY1_ID"));
this.HasRequired(t => t.ENTITY2).WithMany().Map(m => m.MapKey("ENTITY2_ID"));
所以我只需要使用列名来设置主键。使用类似的东西:
this.HasKey(new {"ENTITY1_ID", "ENTITY2_ID"});
我想这样做是为了避免用与持久性相关的属性(ids ..)污染我的模型。是否可以在 Entity Framework 5 上做到这一点?