EF 6 «многие ко многим» с 3 таблицами выдает эту ошибку: невозможно определить основной конец ассоциации между типами - PullRequest
0 голосов
/ 13 марта 2019

Я пытаюсь установить отношение «многие ко многим», создав третью таблицу с помощью Fluent API.

Я пытался этот источник для Fluent API, но та же ошибка. Это просто ошибка? (Я использую VS 2019 Preview)

Таблица «Пользователь»:

public class User
{
    public User()
    {
        Id = Guid.NewGuid().ToString();
        UserTasks = new Collection<UserTask>();
    }

    //other fields
    ...

    public ICollection<UserTask> UserTasks { get; set; }
}

Таблица «Задание»:

public class Task
{
    public Task()
    {
        Id = Guid.NewGuid().ToString();
        UserTasks = new Collection<UserTask>();
    }

    //other fields
    ...

    public ICollection<UserTask> UserTasks { get; set; }
}

Таблица «UserTask»:

public class UserTask
{
    public UserTask()
    {
        Id = Guid.NewGuid().ToString();
    }

    [Key]
    [Required]
    public string Id { get; set; }

    [Required]
    public DateTime Joined { get; set; }

    [Required]
    public DateTime Left { get; set; }


    public string UserId { get; set; }
    public User User { get; set; }

    public string TaskId { get; set; }
    public Task Task { get; set; }
}

Я всегда получаю эту ошибку после команды Add-Migration:

Невозможно определить основной конец ассоциации между типами Intern.Data.Entities.User и Intern.Data.Entities.Task. Основной конец этой ассоциации должен быть явно сконфигурирован с использованием API свободного взаимодействия или аннотаций данных.

...