Newtonsoft.Json.JsonSerializationException: Self referencing loop
将Entity Framework的Modal转换为json时,提示:
=======================
Self referencing loop
说明: 执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: Newtonsoft.Json.JsonSerializationException: Self referencing loop
=======================
这个大要可以理解为Entity Framework的Modal里的实体并不是单纯的实体,还包含了方法甚至是对自身的调用,对于Json转换,出现类似自我循环的死循环
那郁闷的事来了,如果想把某个Modal实体,转成JSON,有没有什么好办法?
功能说明:
由Tree.html中的JQuery AJAX代码发起HTTP请求到GetTreeData.aspx获取JSON格式的字符串,然后在Tree.html中将字符串格式化为JSON格式,用dTree函数递归构造JS Tree。毕业论文
步骤:
1)创建Menu类(为了构造List<T>泛型集合)
2)创建FormatToJson类
3)创建GetTreeData.aspx窗体,添加后台实现代码
4)创建Tree.html,并处理数据递归绑定Tree
1、Tree.html
<!--Tree.html-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript" src="Scripts/dtree.js"></script>
<script type="text/javascript" src="Scripts/jquery-1.4.1.js"></script>
<script type="text/javascript">
d = new dTree('d');
d.add(0, -1, '模块列表');
function getData(id) {
$.ajax({
url: 'TreeSource/GetTreeData.aspx?parentID=' + id,
type: 'post',
datatype: 'json',
success: function (returnJsonValue) {
if (returnJsonValue.length > 0) {
//格式化为JSON数据格式
var json = eval("(" + returnJsonValue + ")");
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] ... 下一页 >>