Я видел, как этот вопрос задавали несколько раз, и я не думаю, что видел отличное решение без создания UserProfile сущности.
Oneчто вы можете сделать, это ссылаться на эту сущность только из класса Users или Profiles.Вы можете сделать что-то вроде этого, например, при добавлении новых профилей для пользователя:
public virtual AddProfile(Profile profileToAdd, int order)
{
//Create middle man object
UserProfile newUserProfile = new UserProfile(this.Id, profileToAdd, order);
this.UserProfiles.Add(newUserProfile);
}
Это может быть не идеально в вашем случае, но если вы хотите абстрагировать middle man от такогоЯ думаю, что приведенный выше пример дает вам начало.