首页新闻找找看学习计划

C# list用Newtonsoft.Json序列化时去查数据库的问题

0
[已解决问题] 解决于 2019-01-09 11:41

JsonConvert.SerializeObject(list, new JsonSerializerSettings() { ReferenceLoopHandling = ReferenceLoopHandling.Ignore })这是序列化的代码?但是我明明用EF把实体Include进来了,执行上面的代码时还去查数据,这是为什么呢?有什么好的解决办法呢。

求知若饥,虚心若愚的主页 求知若饥,虚心若愚 | 初学一级 | 园豆:114
提问于:2018-05-26 18:00
< >
分享
最佳答案
0

试试去掉对应实体属性的virtual修饰符

奖励园豆:5
dudu | 高人七级 |园豆:41305 | 2018-05-26 18:03

这个EF生成的实体修改不太合适吧

求知若饥,虚心若愚 | 园豆:114 (初学一级) | 2018-05-26 18:07

@求知若饥,虚心若愚: 或者添加[JsonIgnore]让 json.net 不对该属性进行序列化

dudu | 园豆:41305 (高人七级) | 2018-05-26 18:10

@dudu: 问题是现在我include()某个实体,也就是某个导航属性已经加载到内存中了,我再进行序列化的时候,为什么还去数据库查询呢

求知若饥,虚心若愚 | 园豆:114 (初学一级) | 2018-05-26 18:13
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册