У меня есть две таблицы с отношениями родитель / потомок, например:
public class Business
{
public int Id { get; set; } //pk
public int ABN { get; set; } //Business Key
public virtual ICollection<Contract> Contracts { get; set; }
}
public class Contract
{
public int Id { get; set; } //PK
public virtual Business Business { get; set; }
public int ABN { get; set; } //FK
}
Я бы хотел отобразить отношения от дочернего к родительскому на бизнес-ключе, а НЕ на первичном ключе. Я думал, что следующее в FluentAPI может помочь, но я не могу понять, как сопоставить BK вместо PK.
modelBuilder.Entity<Contract>()
.HasRequired(l => l.Business)
.WithMany(f => f.Contracts)
.HasForeignKey(l => l.ABN)
Я что-то упустил?