каждый раз, когда я пытался добавить-миграции, а затем он показывает мне код так:EF: 12:59 отношения без создания нового столбца с использованием FLUENT API
public override void Up()
{
AddColumn("dbo.Orders", "OrderItems_Id", c => c.Int(nullable: false));
CreateIndex("dbo.Orders", "OrderItems_Id");
AddForeignKey("dbo.Orders", "OrderItems_Id", "dbo.OrderItems", "Id");
}
Я ищу Google и не нашли решение, моя сущность, понимает, что я хочу установить OrderId of orderItems в качестве ссылок на внешние ключи в Orders.
public class OrderItems
{
public int Id { get; set; }
public int OrderId {get; set;}
public virtual Orders Order { get; set; }
}
public class Orders
{
public int Id { get; set; }
public virtual OrderItems Order { get; set; }
}
Мой свободный API выглядит Belows:
public OrderItemsMapping()
{
this.HasKey(x => x.Id);
this.Property(x => x.GoodId).IsRequired();
this.Property(x => x.OrderId).IsRequired();
this.Property(x => x.Price).IsRequired();
this.Property(x => x.Quantity).IsRequired();
this.Property(x => x.Score).IsRequired();
this.HasOptional(x => x.Order)
.WithOptionalPrincipal(x => x.OrderItems)
.Map(configurationAction: new Action<ForeignKeyAssociationMappingConfiguration>(x => x.MapKey()));
}
еще вещи, которые я должен отметить, что x.MapKey («Id») вызовет ошибку: Имя было установлено и его Должно быть уникальным. Благодарю.
Whta разница между '' Id' и OrderId'? Если существует взаимно-однозначное отношение, тогда 'OrderId' должен быть PK. –
@FarhadJabiev большое спасибо. Я установил OrderId как ключ, и он решил мою проблему. – MapleStory
Хорошо, тогда позвольте мне добавить это как ответ. ИМХО, будет лучше, если вы также измените опцию «Необязательно» на «Обязательно» при сопоставлении FK. –