У меня есть следующие объекты:
public class Product {
[Key]
public int Id{get;set;}
//other properties
}
public Coupon {
[Key]
public int Id {get;set;}
//other properties
public virtual ICollection<Product> Products { get; set; }
public virtual ICollection<CouponCode> CouponCodes { get; set; }
}
Я настраиваю DbModelBuilder
следующим образом:
var builder = new DbModelBuilder();
builder.Entity<Product>().HasKey(p => p.Id);
builder.Entity<Coupon>().HasKey(a => a.Id);
//other properties
builder.Entity<Coupon>().HasMany(x => x.CouponCodes);
builder.Entity<Coupon>().HasMany(x => x.Products);
Эта схема создает Coupon_Id
в Продукты таблицы. На самом деле я хочу зарегистрировать все коды продуктов, для которых действует Coupun
. То, как EF интерпретирует это, очевидно, неверно, так как для одной сущности Product существует несколько купонов.
Пожалуйста, помогите мне найти, что я делаю неправильно.