我正在使用没有定义外键的现有数据库。我无法更改数据库,但想在我的实体模型中定义关系。例如,People表具有人员的所有名称,但Coaches表仅具有PeopleId的引用。我想在我的Coaches实体对象中定义该关系。
答案 0 :(得分:2)
我发现,通过更多测试,数据库没有定义外键似乎并不重要。我仍然能够引入相关的表格信息。将需要进行额外的测试,因为数据库不强制执行参照完整性。但是,通过此表定义和模型定义,我的人员数据正在被引入。
[Key]
public int CoachID { get; set; }
public Nullable<int> CompanyID { get; set; }
public Nullable<int> SeasonID { get; set; }
public int PeopleID { get; set; }
public Nullable<int> PlayerID { get; set; }
public string ShirtSize { get; set; }
public string CoachPhone { get; set; }
public Nullable<System.DateTime> CreatedDate { get; set; }
public string CreatedUser { get; set; }
public virtual Person Person { get; set; }
modelBuilder
.Entity<Coach>()
.ToTable("Coaches")
.HasRequired(p => p.Person)