Javascript AngularJS没有';t句柄JSON引用

Javascript AngularJS没有';t句柄JSON引用,javascript,asp.net-mvc,json,angularjs,model-view-controller,Javascript,Asp.net Mvc,Json,Angularjs,Model View Controller,我正在做一个小网站来管理食谱。我有一个MVCWebAPI服务器端和一个有角度的js前端 现在我的MVCWebAPI将JSON序列化为(干净易读,谢谢chrome插件JSONView) 但是在我的页面上,我只得到列表中的第一个对象和一个空的第二个tr标记。 有没有办法让AngularJS理解$ref引用?或者我应该修改我的web api配置吗 config.Formatters.XmlFormatter.SupportedMediaTypes.Remove( config.Formatte

我正在做一个小网站来管理食谱。我有一个MVCWebAPI服务器端和一个有角度的js前端

现在我的MVCWebAPI将JSON序列化为(干净易读,谢谢chrome插件JSONView)

但是在我的页面上,我只得到列表中的第一个对象和一个空的第二个
tr
标记。 有没有办法让AngularJS理解$ref引用?或者我应该修改我的web api配置吗

config.Formatters.XmlFormatter.SupportedMediaTypes.Remove(
    config.Formatters.XmlFormatter.SupportedMediaTypes.FirstOrDefault(t => t.MediaType == "application/xml"));

var json = config.Formatters.JsonFormatter;
json.SerializerSettings.PreserveReferencesHandling = Newtonsoft.Json.PreserveReferencesHandling.Objects;
json.SerializerSettings.ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Ignore;

config.Formatters.Remove(config.Formatters.XmlFormatter);
-更新 上面的json是一个chrome扩展的漂亮表示。下面是我从服务中获得的原始数据(并用JSONLint格式化,表示它是有效的JSON):


您的JSON无效,这意味着问题出在API方面

Category: {
  $ref: "2"
}
Id: 2
...
  ],
  Id: 1
}
Id: 1

要成功解析,必须在Id:2和Id:1之前加一个逗号。

api中的人员已经更新了他们的代码,因此循环现在不再发生。这解决了我的问题


无论如何,谢谢!:)

你的JSON是乱七八糟的-这真的是你从序列化中得到的吗?JSON不是字符串化的。
[
    {
        "$id": "1",
        "Name": "Spaghetti",
        "CookTime": "00:30:00",
        "Servings": 2,
        "CategoryId": 1,
        "Category": {
            "$id": "2",
            "Name": "Pasta",
            "Recipes": [
                {
                    "$ref": "1"
                },
                {
                    "$id": "3",
                    "Name": "Recipe 2",
                    "CookTime": "01:20:00",
                    "Servings": 2,
                    "CategoryId": 1,
                    "Category": {
                        "$ref": "2"
                    }
                    "Id": 2
                }
            ],
            "Id": 1
        }
        "Id": 1
    },
    {
        "$ref": "3"
    }
]
Category: {
  $ref: "2"
}
Id: 2
...
  ],
  Id: 1
}
Id: 1