C# FluentAPI связать одну таблицу с тремя дугими типа One-To-Many по одному столбцу и(или) "по столбцу тип"

Есть табцица Invoices с Id и RelatedId, "Type" и т.д. Так же есть 2 таблицы Products, Services так же со своими Id и т.д.

Как связать таблицу Invoices во FluentAPI Entity чтобы RelatedId ссылался на Products или Services

modelBuilder.Entity<Invoice>()
    .HasOne(e => e.Product)
    .WithMany()
    .HasForeignKey(e => new { e.RelatedId })
    .HasPrincipalKey(p => new { p.Id });

modelBuilder.Entity<Invoice>()
    .HasOne(e => e.Service)
    .WithMany()
    .HasForeignKey(e => new { e.RelatedId })
    .HasPrincipalKey(p => new { p.Id });

не знаю как всё это связать ещё и по столбцу Type так как понимаю, что без него никак. Если добавлю стобец Type с Key в Product и Service то быдет нестыковка в других таблицах.


Ответы (0 шт):