Wenn Sie .NET Core 2.x verwenden, aktualisieren Sie Ihre ConfigureServices
Abschnitt in Startup.cs
https://learn.microsoft.com/en-us/ef/core/querying/related-data/serialization
public void ConfigureServices(IServiceCollection services)
{
...
services.AddMvc()
.AddJsonOptions(options =>
options.SerializerSettings.ReferenceLoopHandling =
Newtonsoft.Json.ReferenceLoopHandling.Ignore
);
...
}
Wenn Sie .NET Core 3.x - 5.0 verwenden, ohne MVC, wäre es:
# startup.cs
services.AddControllers()
.AddNewtonsoftJson(options =>
options.SerializerSettings.ReferenceLoopHandling =
Newtonsoft.Json.ReferenceLoopHandling.Ignore
);
Für .NET 6.0 besteht der einzige Unterschied darin, dass es jetzt in Program.cs
.
# program.cs
services.AddControllers()
.AddNewtonsoftJson(options =>
options.SerializerSettings.ReferenceLoopHandling =
Newtonsoft.Json.ReferenceLoopHandling.Ignore);
Diese Referenzschleifenbehandlung ist fast obligatorisch, wenn Sie Entity Framework und das Entwurfsmuster "Database First" verwenden.