1
我正在使用Microsoft的此tutorial與EF4.1建立一對一的關係在教師和OfficeAssignment之間。這是一種魅力。多個「1到0..1」關係模型
但現在我想每個教練喜歡在此添加主頁(1至零或-1):
我加入了家庭模式完全相同的方式作爲OfficeAssignment(就像上面的教程一樣),但是當我嘗試爲這些模型添加控制器時,出現錯誤「已經添加了一個同名的項目」。
所以我的模型設置不正確。 下面有什麼問題? 如何在EF4.1中創建多個一對零關係?
public class Instructor
{
public Int32 InstructorID { get; set; }
public string LastName { get; set; }
public string FirstMidName { get; set; }
public virtual OfficeAssignment OfficeAssignment { get; set; }
public virtual Home Home { get; set; }
}
public class OfficeAssignment
{
[Key]
public int InstructorID { get; set; }
public string Location { get; set; }
public virtual Instructor Instructor { get; set; }
}
public class Home
{
[Key]
public int InstructorID { get; set; }
public string Location { get; set; }
public virtual Instructor Instructor { get; set; }
}
public class Context : DbContext
{
public DbSet<OfficeAssignment> OfficeAssignments { get; set; }
public DbSet<Instructor> Instructors { get; set; }
public DbSet<Home> Homes { get; set; }
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
modelBuilder.Entity<Instructor>()
.HasOptional(p => p.OfficeAssignment)
.WithRequired(p => p.Instructor);
modelBuilder.Entity<Instructor>()
.HasOptional(p => p.Home).WithRequired(p => p.Instructor);
}