Rilevato loop di autoriferimento – Recupero dei dati da WebApi al browser

Sto usando Entity Framework e ho un problema con l’acquisizione di dati genitore e figlio nel browser. Ecco le mie classi:

public class Question { public int QuestionId { get; set; } public string Title { get; set; } public virtual ICollection Answers { get; set; } } public class Answer { public int AnswerId { get; set; } public string Text { get; set; } public int QuestionId { get; set; } public virtual Question Question { get; set; } } 

Sto usando il seguente codice per restituire i dati di domanda e risposta:

  public IList GetQuestions(int subTopicId, int questionStatusId) { var questions = _questionsRepository.GetAll() .Where(a => a.SubTopicId == subTopicId && (questionStatusId == 99 || a.QuestionStatusId == questionStatusId)) .Include(a => a.Answers) .ToList(); return questions; } 

Sul lato C # sembra funzionare, tuttavia noto che gli oggetti risposta hanno riferimenti alla domanda. Quando utilizzo WebAPI per ottenere i dati nel browser, viene visualizzato il seguente messaggio:

Il tipo ‘ObjectContent`1’ non è riuscito a serializzare il corpo della risposta per il tipo di contenuto ‘application / json; charset = utf-8’ .

Ciclo di autoriferimento rilevato per la proprietà “domanda” con tipo “Models.Core.Question”.

È perché la domanda ha risposte e le risposte hanno un riferimento alla domanda? Tutti i posti che ho guardato suggeriscono di avere un riferimento al genitore nel bambino, quindi non sono sicuro di cosa fare. Qualcuno può darmi qualche consiglio su questo.