Как сериализовать JSON без циклической ошибки ⇐ C#

Место общения программистов C#
Anonymous
Как сериализовать JSON без циклической ошибки

Сообщение Anonymous »

У меня есть две сущности: «Докладчики» и «Сессии», где выступающие могут быть участниками нескольких сеансов, а в сеансах может участвовать несколько докладчиков. Я определил их следующим образом и, по-моему, успешно заполнил таблицу динамиков (я считаю, что это сработало, потому что таблица связей SessionRecSpeakerRec была создана, как я и ожидал.
Вот мои определения:

Код: Выделить всё

public class SessionRec
{
public int Id { get; set; }
public string Title { get; set; }
public virtual List Sessions { get; set; }
}

public class SpeakerRec
{
public int Id { get; set; }
public string First { get; set; }
public string Last { get; set; }
public virtual List Sessions { get; set; }
}

public DbSet SessionRecs { get; set; }
public DbSet SpeakerRecs { get; set; }
В моем коде контроллера C# asp.net я делаю это, пытаясь получить список докладчиков с сессиями:

Код: Выделить всё

[HttpGet]
public IEnumerable GetSpeakerRecs()
{
return _context.SpeakerRecs.Include(a=>a.Sessions).ToList();
}
И я получаю ошибку цикла. Есть какие-нибудь подсказки, почему и как это исправить?

JsonException: обнаружен возможный цикл объектов. Это может быть
из-за цикла или если глубина объекта превышает максимально
разрешенную глубину 32. Рассмотрите возможность использования ReferenceHandler.Preserve в
JsonSerializerOptions для поддержки циклов.


Подробнее здесь: https://stackoverflow.com/questions/651 ... clic-error

Вернуться в «C#»