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() для таких случаев, чтобы он работал?
Если последовать совету из исключения, то получится, что для одной из таблиц ссылки автоматически не будут подтягиваться, а мне уж очень этого хочется.