实体,多对多,添加 - 忽略多对多表

时间:2015-02-05 16:27:55

标签: c# entity-framework

我有这个映射:

modelBuilder.Entity<Reservation>()
            .HasMany(e => e.Chairs)
            .WithMany(e => e.Reservations)
            .Map(m => m.ToTable("ReservationsChairs").MapLeftKey("Reservation_ID").MapRightKey("Chair_ID"));

所以,问题是当我尝试创建预订时。

我有这个预订对象:

public class Reservation
{
    public Reservation()
    {
        Chairs = new HashSet<Chair>();
    }

    public int ID { get; set; }
    public bool IsPaid { get; set; }
    public virtual Planning Planning { get; set; }
    public virtual ICollection<Chair> Chairs { get; set; }
}

我附上了椅子(已经创建了),但是,实体不使用“多对多”表来将预约与主席绑定。它实际上开始在椅子表中创建相同的椅子......

为什么会这样做,我该怎么做才能让它使用多对多?

我的椅子对象有这个:

public virtual ICollection<Reservation> Reservations { get; set; }

当我使用附加的椅子创建预订时,上面的节点将是“空”。这是错的吗?

0 个答案:

没有答案