Entity Framework wiele do wielu relacji z dodatkowym polem (Database First)
Mam program używający bazy danych Entity Framework (EF) Najpierw w warstwie dostępu do danych. Wiem, że aby EF wygenerował automatycznie właściwości nawigacyjne relacji wielu do wielu, tabela odwzorowań musi zawierać tylko złożony klucz podstawowy:
Project
- ProjectId (PK)
- Name
ContentType
- ContentTypeId (PK)
- Name
ProjectContentTypeMapping
- ProjectId (PK)
- ContentTypeId (PK)
W tym przypadku wszystko działa dobrze i mogę uzyskać dostęp do projektów z ContentTypes i odwrotnie z właściwościami nawigacji.
Jednak mam wymóg posiadania dodatkowych pól, które są specyficzne dla relacji między projektami i ContentTypes, a to byłyby dodatkowe kolumny w tabeli ProjectContentTypeMapping. Po ich dodaniu tracę właściwości nawigacyjne, a EF pokazuje tabelę mapowania w projektancie.
Czy istnieje sposób, w jaki mogę ręcznie skonfigurować mapowanie między tymi dwiema tabelami w EF (Database First)? Alternatywnie, jak mogę to reprezentować? Zastanawiałem się, czy nie mieć dodatkowej tabeli „metadanych” z FK do tabeli odwzorowań, ale dla mnie wygląda to „hacky” ...
Dzięki