Итак, сначала я работаю над кодом Entity Framework. Я довольно новичок в реляционном отображении базы данных в целом. Я создал общий пример для своего вопроса, код которого я опубликую ниже.
Сценарий - это простой опрос на форуме. Пользователь может голосовать в опросе, выбрав опцию (или, возможно, несколько опций опроса).
Опрос и Опция имеют отношение один ко многим.
Опция и Пользователь имеют отношение многие ко многим.
Опрос и Пользователь имеют отношение многие ко многим.
Но пользователи, которые есть в опросе, будут в основном составлены из пользователей, у которых есть опции, так как для голосования по опциону вы должны голосовать в опросе и наоборот. Так что, в принципе, я думаю, что это можно описать как таблицу соединений пользователя / параметров с привязанными к ним первичными ключами опросов. Или это может быть что-то вроде таблицы соединения User / Poll с Option как массив сложных типов или что-то в этом роде.
В любом случае, я работал с Fluent API (DbModelBuilder), но мне еще не пришло то, что я ищу. Помощь
Poll.cs
public class Poll
{
public long ID { get; private set; }
public ICollection<Option> Options { get; set; }
public ICollection<User> Users { get; set; }
}
Option.cs
public class Option
{
public long ID { get; private set; }
public long PollID { get; set; }
public ICollection<User> Users { get; set; }
}
User.cs
public class User {
public long ID { get; private set; }
public ICollection<Option> Polls { get; set; }
public ICollection<User> Options { get; set; }
{