首页 > Web开发 > 详细

EF中用Newtonsoft.Json引发的循环引用问题

时间:2015-04-23 13:01:10      阅读:152      评论:0      收藏:0      [点我收藏+]

描述:

1、双向关系表a->b b->aList

2、在查询a引用b以后

3、用Newtonsoft.Json 去tojsonstring

4、一个只有6条数据的json串 出现了一屏幕字符然后内存溢出

 

解决方案:

1、网上各种解决方法都是不靠谱不奏效的

2、不要对ef失去信心

3、做个模型然后在获取列表的时候用新模型

 

public IList<DeviceInfoMenuModel> GetMenuList(DeviceInfoParam param)
{
var list = _deviceInfoRepository.Table;

if (param != null)
{

if (!string.IsNullOrWhiteSpace(param.Province))
{
list = list.Where(r => r.Province.ProName == param.Province.Trim());
}
if (!string.IsNullOrWhiteSpace(param.City))
{
list = list.Where(r => r.City.CityName == param.City.Trim());
}
if (!string.IsNullOrWhiteSpace(param.District))
{
list = list.Where(r => r.District.DisName == param.District.Trim());
}
}

list = list.OrderByDescending(r => r.Id);


return list.Select(Mapper.Map<DeviceInfo, DeviceInfoMenuModel>).ToList();   //《----注意这里的映射
}

 

4、在生成json 问题解决

EF中用Newtonsoft.Json引发的循环引用问题

原文:http://www.cnblogs.com/zcm123/p/4449936.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!