C# & EF Core 5.x метод AutoInclude() для отношения многие ко многим

Когда я настраиваю модель в OnModelCreating(), я использую метод AutoInclude() для полей навигации:

modelBuilder.Entity(tableType).Navigation(tableType.NavigationPropertyName).AutoInclude();

И это прекрасно работает для отношений один-к-одному или один-ко-многим. Но для отношения многие-ко-многим, когда запрашиваю данные я получаю это исключение:

Cycle detected while auto-including navigations: 'FirstTable.Second', 'SecondTable.First'. To fix this issue, either don't configure at least one navigation in the cycle as auto included in OnModelCreating or call 'IgnoreAutoInclude' method on the query.

Пример:

public class FirstTable
{
    public int Id { get; set; }    

    public virtual List<SecondTable> Second { get; set; } = new();
}

public class SecondTable
{
    public int Id { get; set; }    

    public virtual List<FirstTable> First { get; set; } = new();
}

//Где-то в программе

using var db = new MyContext();
var data = db.Set<FirstTable>();   // <-- Тут исключение

Отсюда мой вопрос: кто-нибудь знает, как использовать AutoInclude() для таких случаев, чтобы он работал?

Если последовать совету из исключения, то получится, что для одной из таблиц ссылки автоматически не будут подтягиваться, а мне уж очень этого хочется.


Ответы (0 шт):