如何在 EF Core 中获取依赖实体?

11 浏览
0 Comments

如何在 EF Core 中获取依赖实体?

这是我的模型架构。

这是依赖实体。

这是我在路由上显示数据的方式,但是ArticleFees只显示一个空数组。

0
0 Comments

如何在EF Core上获取相关实体?

问题的原因是在JSON序列化过程中检测到了无限循环,因为Article指向ArticleFee,而ArticleFee又指向Article。

为了解决这个问题,你需要在Startup.cs中配置应用程序,以便在检测到此类循环时“忽略”而不是“抛出异常”。根据来自此SO答案的.NET Core解决方案:

services.AddMvc().AddJsonOptions(options => {
     options.SerializerSettings.ReferenceLoopHandling = ReferenceLoopHandling.Ignore;
}); ;

你需要在文件中添加`using Newtonsoft.Json;`。

假设你的Type实体是正确的(*)

这可能会成为一个问题,但如果是这样,它会抛出一个异常而不是静默地序列化一个空数组。而且,当忽略引用循环时,数组应该被序列化,但不应该序列化其元素内的反向引用。

0