加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

entity-framework – 序列化时如何忽略导航属性

发布时间:2020-12-16 10:01:53 所属栏目:asp.Net 来源:网络整理
导读:我正在使用ASP.NET Web API和Entity Framework. 我将默认的序列化程序更改为 JSON.NET(因为默认的DataContractSerializer与EF完全不兼容). 现在它更好(它至少起作用),但仍然不完美.在发送GET请求之后,我从一个表中获取所有属性以及来自导航属性的大量数据(因
我正在使用ASP.NET Web API和Entity Framework.
我将默认的序列化程序更改为 JSON.NET(因为默认的DataContractSerializer与EF完全不兼容).
现在它更好(它至少起作用),但仍然不完美.在发送GET请求之后,我从一个表中获取所有属性以及来自导航属性的大量数据(因此基本上所有来自其他实体的数据都与我想要获取的实体有关…).
如何使其仅序列化此实体中的字段而不是导航属性?

感谢帮助

解决方法

尝试禁用延迟加载.

Json序列化程序正在遍历实体的属性以序列化它们,因此也调用导航属性的getter.调用导航属性的getter =触发延迟加载.加载延迟了一段时间,但直到序列化程序到达导航属性并导致额外的数据库查询来获取子属性值,然后已经序列化.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读