У пользователя есть роли для систем - как (объектно) моделировать троичные отношения?

У меня есть следующие сущности:

Privilege ( Id, Name )
Role ( Id, Name, ICollection<Privilege> )
System ( Id, Name )

User ( Id, Name, Pass, ? )

Теперь я хочу смоделировать «Пользователь может иметь для каждой из нуля или более систем ноль или более ролей», например:

IDictionary<System, ICollection<Role>> SystemRoles { get; set; }

Возможно ли это с ASP.NET EntityFramework? Если да, то как? Какие атрибуты я должен установить?

Я уже некоторое время оглядываюсь по сторонам, однако я не нахожу в сети ничего полезного для "троичного отношения кода структуры сущностей"

Можете ли вы указать мне какую-нибудь красивую ссылку, где это подробно описано? Или, может быть, дать мне подсказку, как его смоделировать / какие атрибуты я могу добавить в словарь?

Дополнительный вопрос: если решение IDictionary работает каким-либо образом, есть ли какие-либо изменения, чтобы получить производительность прокси-сервера отслеживания изменений? IDictionary не является ICollection ...

Ответы на вопрос(1)

Ваш ответ на вопрос