J'ai 2 entités liées comme une à plusieurs
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;}
}
Si j'essaie d'obtenir des restaurants avec des réservations en utilisant mon API
var restaurants = await _dbContext.Restaurants
.AsNoTracking()
.AsQueryable()
.Include(m => m.Reservations).ToListAsync();
.....
Je reçois une erreur en réponse, car les objets contiennent des références les uns aux autres. Il existe des articles connexes qui recommandent de créer un modèle distinct ou d'ajouter une configuration NewtonsoftJson
Le problème est que je ne veux pas créer de modèle séparé et la deuxième suggestion n'a pas aidé. Existe-t-il un moyen de charger des données sans relation cyclée? *
System.Text.Json.JsonException: un éventuel cycle d'objet a été détecté qui n'est pas pris en charge. Cela peut être dû à un cycle ou si la profondeur de l'objet est supérieure à la profondeur maximale autorisée de 32. sur System.Text.Json.ThrowHelper.ThrowInvalidOperationException_SerializerCycleDetected (Int32 maxDepth) sur System.Text.Json.JsonSerializer.Write (Utf8JsonWriter writer , Int32 originalWriterDepth, Int32 flushThreshold, options JsonSerializerOptions, WriteStack & state) sur System.Text.Json.JsonSerializer.WriteAsyncCore (Stream utf8Json, valeur d'objet, type inputType, options JsonSerializerOptions, CancellationToken annulationToken) sur Microsoft.AspFormTormFormer WriteResponseBodyAsync (contexte OutputFormatterWriteContext, Encoding selectedEncoding) sur Microsoft.AspNetCore.Mvc.
*