Ho 2 entità che sono correlate come una a molte
public class Restaurant {
public int RestaurantId {get;set;}
public string Name {get;set;}
public List<Reservation> Reservations {get;set;}
...
}
public class Reservation{
public int ReservationId {get;set;}
public int RestaurantId {get;set;}
public Restaurant Restaurant {get;set;}
}
Se provo a trovare ristoranti con prenotazioni usando la mia API
var restaurants = await _dbContext.Restaurants
.AsNoTracking()
.AsQueryable()
.Include(m => m.Reservations).ToListAsync();
.....
Ricevo un errore in risposta, perché gli oggetti contengono riferimenti reciproci. Ci sono post correlati che consigliano di creare un modello separato o aggiungere la configurazione NewtonsoftJson
Il problema è che non voglio creare un modello separato e il secondo suggerimento non ha aiutato. Esiste un modo per caricare i dati senza relazione ciclica? *
System.Text.Json.JsonException: è stato rilevato un possibile ciclo di oggetti che non è supportato. Ciò può essere dovuto a un ciclo o se la profondità dell'oggetto è maggiore della profondità massima consentita di 32. su System.Text.Json.ThrowHelper.ThrowInvalidOperationException_SerializerCycleDetected (Int32 maxDepth) su System.Text.Json.JsonSerializer.Write (Utf8Json writer , Int32 originalWriterDepth, Int32 flushThreshold, JsonSerializerOptions opzioni, WriteStack & state) in System.Text.Json.JsonSerializer.WriteAsyncCore (Stream utf8Json, Valore oggetto, Tipo inputType, JsonSerializerOptions.Proc. WriteResponseBodyAsync (contesto OutputFormatterWriteContext, Encoding selectedEncoding) su Microsoft.AspNetCore.Mvc.
*